Publications:Event-Driven FRP

Jump to: navigation, search

Do not edit this section

Keep all hand-made modifications below

Title Event-Driven FRP
Author Zhanyong Wan and Walid Taha and Paul Hudak
Year 2002
PublicationType Conference Paper
Conference PADL'02. International Symposium on Practical Aspects of Declarative Languages
Diva url
Abstract Functional Reactive Programming (FRP) is a high-level declar-ative language for programming reactive systems. Previous work on FRPhas demonstrated its utility in a wide range of application domains, in-cluding animation, graphical user interfaces, and robotics. FRP has anelegant continuous-time denotational semantics. However, it guaranteesno bounds on execution time or space, thus making it unsuitable for manyembedded real-time applications. To alleviate this problem, we recentlydeveloped Real-Time FRP (RT-FRP), whose operational semantics per-mits us to formally guarantee bounds on both execution time and space.In this paper we present a formally veriable compilation strategy froma new language based on RT-FRP into imperative code. The new lan-guage, called Event-Driven FRP (E-FRP), is more tuned to the paradigmof having multiple external events. While it is smaller than RT-FRP, itfeatures a key construct that allows us to compile the language into e-cient code. We have used this language and its compiler to generate codefor a small robot controller that runs on a PIC16C66 micro-controller.Because the formal specication of compilation was crafted more for clar-ity and for technical convenience, we describe an implementation thatproduces more ecient code.