This paper presents a way to implement FRP that combines data- and demand-driven evaluation, in which values are recomputed only when necessary, and reactions are nearly instantaneous. The implementation is rooted in a new simple formulation of FRP and it
"Grapefruit is a library for creating graphical user interfaces and animated graphics in a declarative way. It contains an implementation of Functional Reactive Programming and a record system."