Publications:Event-Driven FRP
From CERES
Title | Event-Driven FRP |
---|---|
Author | Zhanyong Wan and Walid Taha and Paul Hudak |
Year | 2002 |
PublicationType | Conference Paper |
Journal | |
HostPublication | |
DOI | |
Conference | PADL'02. International Symposium on Practical Aspects of Declarative Languages |
Diva url | http://hh.diva-portal.org/smash/record.jsf?searchId=1&pid=diva2:588284 |
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. |