SPLASH 2021
Sun 17 - Fri 22 October 2021 Chicago, Illinois, United States
Mon 18 Oct 2021 13:50 - 14:15 at Zurich G - Session 2 Chair(s): Alan Jeffrey

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 Oct

Displayed time zone: Central Time (US & Canada) change

13:50 - 15:10
Session 2REBLS at Zurich G
Chair(s): Alan Jeffrey Roblox
13:50
25m
Talk
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
25m
Talk
Symmetric Distributed Applications
REBLS
Francisco Sant'Anna Rio de Janeiro State University, Rodrigo Santos Microsoft, Noemi Rodriguez PUC-Rio
DOI
14:40
25m
Talk
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