Thursday, 13 October 2011, 14:00
Cybernetica Bldg (Akadeemia tee 21), room B101
Slides from the talk [pdf]
Abstract: Functional Reactive Programming (FRP) makes it possible to implement reactive and interactive systems in a declarative style. The programmer describes temporal behavior of system components using continuous and discrete signals, which represent time-varying values and event streams, respectively. Signal combinators make it possible to construct complex signals out of simpler ones.
In this talk, I will first give an introduction to FRP and present a straightforward implementation of an FRP subset in Haskell. I will then show why this implementation fails to provide signals as first-class values. Finally, I will explain how this problem can be solved by employing lazy evaluation and advanced type system features.