Modularity 2016
Mon 14 - Thu 17 March 2016 Spain
Tue 15 Mar 2016 11:00 - 11:30 at CROW - CROW Workshop Session 1 Cont.

In this paper, we introduce a new functional reactive programming (FRP) language Emfrp designed to support small-scale embedded systems. An Emfrp program defines a system as a directed acyclic graph whose nodes correspond to the time-varying values in the system. The language equips a simple mechanism that enables each node to refer the past values of arbitrary nodes. Using this mechanism, Emfrp provides simplicity and flexibility for describing complex time-dependent reactive behaviors without space and time leaks. Our Emfrp compiler produces platform-independent ANSI-C code that can run on bare-metal microprocessor boards. We demonstrate the advantage of the language by presenting some non-trivial examples.