## First-class signals for Functional Reactive Programming

Institute of Cybernetics at TUT

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.

Tarmo Uustalu

Last update 13.10.2011