Skip to main content

Research Repository

Advanced Search

Functional reactive programming, refactored


Ivan Perez


Henrik Nilsson


Functional Reactive Programming (FRP) has come to mean many things. Yet, scratch the surface of the multitude of realisations, and there is great commonality between them. This paper investigates this commonality, turning it into a mathematically coherent and practical FRP realisation that allows us to express the functionality of many existing FRP systems and beyond by providing a minimal FRP core parameterised on a monad. We give proofs for our theoretical claims and we have verified the practical side by benchmarking a set of existing, non-trivial Yampa applications running on top of our new system with very good results.


Perez, I., Bärenz, M., & Nilsson, H. (2016). Functional reactive programming, refactored.

Conference Name Proceedings of the 9th International Symposium on Haskell (Haskell '16)
End Date Sep 23, 2016
Acceptance Date Jul 12, 2016
Publication Date Sep 22, 2016
Deposit Date Sep 1, 2016
Publicly Available Date Sep 22, 2016
Peer Reviewed Peer Reviewed
Keywords Functional reactive programming, Reactive programming, Stream programming, Monadic streams, Haskell
Public URL
Publisher URL


You might also like

Downloadable Citations