Trampoline Variables: A General Method for State Accumulation in Reactive Programming
Reactive programming is all about relegating the management of a program's state changes to the realm of the runtime environment. Nevertheless, sometimes it is still necessary to enrich a reactive program with state variables that are explicitly updated by the programmer. In current reactive languages this is accomplished either by polluting the reactive paradigm with imperative constructs or by relying on built-in operators such as \texttt{foldp}.
This paper introduces \emph{trampoline variables}, a new \emph{general} mechanism that allows reactive programs to manipulate state explicitly without resorting to imperative programming. We show that our proposal is at least as powerful as existing built-in reactive operators. We also analyse how reactive programs with trampoline variables can be composed and how they can form the basis to replace stateful constituents of a running reactive program — a.k.a. hotswapping — in a coherent way. The latter is an essential building block towards live IDEs for reactive programming languages.
Mon 18 OctDisplayed time zone: Central Time (US & Canada) change
13:50 - 15:10 | |||
13:50 25mTalk | Trampoline Variables: A General Method for State Accumulation in Reactive Programming REBLS Bjarno Oeyen Vrije Universiteit Brussel, Sam Van den Vonder Vrije Universiteit Brussel, Wolfgang De Meuter Vrije Universiteit Brussel DOI Pre-print | ||
14:15 25mTalk | Symmetric Distributed Applications REBLS Francisco Sant'Anna Rio de Janeiro State University, Rodrigo Santos Microsoft, Noemi Rodriguez PUC-Rio DOI | ||
14:40 25mTalk | Analysing the Performance and Costs of Reactive Programming Libraries in Java REBLS Julien Ponge Red Hat, Arthur Navarro Red Hat, Clément Escoffier Red Hat, Frédéric Le Mouël University of Lyon; INSA Lyon; Inria; CITI DOI |