kirancodes.me
To Proof Maintenance & Beyond!

Settable and non-interfering signal functions for FRP: how a first-order switch is more than enough

Daniel Winograd-Cort, Paul Hudak

Abstract

Functional Reactive Programming (FRP) provides a method for programming continuous, reactive systems by utilizing signal functions that, abstractly, transform continuous input signals into continuous output signals. These signals may also be streams of events, and indeed, by allowing signal functions themselves to be the values carried by these events (in essence, signals of signal functions), one can conveniently make discrete changes in program behavior by "switching" into and out of these signal functions. This higher-order notion of switching is common among many FRP systems, in particular those based on arrows, such as Yampa.

Related papers