• Home
  • Search
  • Settable and non-interfering signal functions for FRP
  • Cite Icon4
  • https://doi.org/10.1145/2692915.2628140Copy DOI Icon

Settable and non-interfering signal functions for FRP

Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Functional Reactive Programming (FRP) provides a method for programming continuous, reactive systems by utilizing signal functions that, abstractly, transform continuous input signals into continuous output signals. These signals may also be streams of events , and indeed, by allowing signal functions themselves to be the values carried by these events (in essence, signals of signal functions), one can conveniently make discrete changes in program behavior by "switching" into and out of these signal functions. This higher-order notion of switching is common among many FRP systems, in particular those based on arrows, such as Yampa. Although convenient, the power of switching is often an overkill and can pose problems for certain types of program optimization (such as causal commutative arrows [14]), as it causes the structure of the program to change dynamically at run-time. Without a notion of just-in-time compilation or related idea, which itself is beset with problems, such optimizations are not possible at compile time. This paper introduces two new ideas that obviate, in a predominance of cases, the need for switching. The first is a non-interference law for arrows with choice that allows an arrowized FRP program to dynamically alter its own structure (within statically limited bounds) as well as abandon unused streams. The other idea is a notion of a settable signal function that allows a signal function to capture its present state and later be restarted from some previous state. With these two features, canonical uses of higher-order switchers can be replaced with a suitable first-order design, thus enabling a broader range of static optimizations.

Similar Papers
  • Conference Article

Functional Reactive Program Translator for Controlling Robot Systems

  • Nov 01, 2007
  • Byeong-Joon Lee +2
  • Conference Article
  • Citations42

Safe functional reactive programming through dependent types

  • Aug 31, 2009
  • Neil Sculthorpe +1
  • Research Article

Functional reactive programming with liveness guarantees

  • Sep 25, 2013
  • ACM SIGPLAN Notices
  • Alan Jeffrey
  • Research Article
  • Citations5

Runtime verification and validation of functional reactive systems

  • Jan 01, 2020
  • Journal of Functional Programming
  • Ivan Perez +1
  • Research Article
  • Citations36

Asynchronous functional reactive programming for GUIs

  • Jun 16, 2013
  • ACM SIGPLAN Notices
  • Evan Czaplicki +1
  • Research Article
  • Citations9

Real-time FRP

  • Oct 01, 2001
  • ACM SIGPLAN Notices
  • Zhanyong Wan +2
  • Conference Article
  • Citations46

Fair reactive programming

  • Jan 08, 2014
  • Andrew Cave +3
  • Book Chapter
  • Citations6

A Practical Overview

  • Jan 01, 2016
  • Fernando Doglio
  • Conference Article
  • Citations3

Work in Progress: Response Time Analysis of Real-Time Quantum Computing Systems

  • May 01, 2023
  • Albert M K Cheng
  • Research Article
  • Citations6

Rhine: FRP with type-level clocks

  • Sep 17, 2018
  • ACM SIGPLAN Notices
  • Manuel Bärenz +1
  • Book Chapter
  • Citations4

Frabjous: A Declarative Domain-Specific Language for Agent-Based Modeling

  • Jan 01, 2014
  • Ivan Vendrov +2
  • Research Article
  • Citations21

Simply RaTT: a fitch-style modal calculus for reactive programming without space leaks

  • Jul 26, 2019
  • Proceedings of the ACM on Programming Languages
  • Patrick Bahr +2
  • Single Report
  • Citations63

Nettle: Functional Reactive Programming for OpenFlow Networks

  • Jul 01, 2010
  • Andreas Voellmy +2
  • Journal Issue

Proceedings of the 7th Workshop on Mathematically Structured Functional Programming

  • Jul 10, 2018
  • Electronic Proceedings in Theoretical Computer Science
  • Robert Atkey +1
  • Research Article
  • Citations5

Feasibility interval for the transactional event handlers of P-FRP

  • Dec 13, 2012
  • Journal of Computer and System Sciences
  • Chaitanya Belwal +2
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.