Affiliation:
1. University of Nottingham, UK
2. University of Bamberg, Germany
Abstract
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.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference26 articles.
1. Reification of time in FRP. http://pchiusano.blogspot.co.uk/ 2010/07/reification-of-time-in-frp-is.html. Reification of time in FRP. http://pchiusano.blogspot.co.uk/ 2010/07/reification-of-time-in-frp-is.html.
2. Haskanoid. github.com/ivanperez-keera/haskanoid. Haskanoid. github.com/ivanperez-keera/haskanoid.
3. Magic Cookies! https://play.google.com/store/apps/ details?id=uk.co.keera.games.magiccookies. Magic Cookies! https://play.google.com/store/apps/ details?id=uk.co.keera.games.magiccookies.
4. Pipes. https://hackage.haskell.org/package/pipes. Pipes. https://hackage.haskell.org/package/pipes.
5. E. Bainomugisha A. L. Carreton T. v. Cutsem S. Mostinckx and W. d. Meuter. A survey on reactive programming. ACM Computing Surveys (CSUR) 45(4):52 2013. 10.1145/2501654.2501666 E. Bainomugisha A. L. Carreton T. v. Cutsem S. Mostinckx and W. d. Meuter. A survey on reactive programming. ACM Computing Surveys (CSUR) 45(4):52 2013. 10.1145/2501654.2501666
Cited by
5 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. The Essence of Reactivity;Proceedings of the 16th ACM SIGPLAN International Haskell Symposium;2023-08-30
2. Semantics of RxJS;Proceedings of the 9th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems;2022-11-29
3. Using Functional Reactive Programming to Define Safe Actor Systems;Proceedings of the 24th ACM International Workshop on Formal Techniques for Java-like Programs;2022-06-07
4. Asynchronous monad for reactive IoT programming;Proceedings of the 7th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems;2020-11-15
5. Hailstorm: A Statically-Typed, Purely Functional Language for IoT Applications;22nd International Symposium on Principles and Practice of Declarative Programming;2020-09-08