Appendix E. Denotational semantics of Sodium

Revision 1.1—26 Apr 2016

E.1. Introduction

This document is the formal specification of the semantics of Sodium, an FRP system based on the concepts from Conal Elliott’s paper “Push-Pull FRP.” The code in this document is in Haskell, and a basic knowledge of Haskell is required to understand it. Most readers won’t need this information, but people interested in FRP semantics and developers of FRP systems will find it useful. Note that this has nothing to do with the Haskell implementation of Sodium. The executable version of this specification can be found at

E.2. Revision history

  • 1.0 (19 May 2015)—First version
  • 1.1 (24 July 2015)—The ...

Get Functional Reactive Programming now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.