Trampoline Variables: A General Method for State Accumulation in Reactive Programming

Research output: Chapter in Book/Report/Conference proceedingMeeting abstract (Book)

5 Downloads (Pure)

Abstract

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 foldp.

This paper introduces trampoline variables, a new 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.
Original languageEnglish
Title of host publicationREBLS 2021 - Proceedings of the 8th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems
Place of PublicationChicago, IL, USA
PublisherACM
Number of pages14
ISBN (Electronic)978-1-4503-9108-5
DOIs
Publication statusPublished - 18 Oct 2021
EventREBLS 2021: 8th Workshop on Reactive and Event-based Languages & Systems - Swissotel Chicago, Chicago, United States
Duration: 17 Oct 202122 Oct 2021
Conference number: 2021
https://2021.splashcon.org/home/rebls-2021

Workshop

WorkshopREBLS 2021: 8th Workshop on Reactive and Event-based Languages & Systems
Abbreviated titleREBLS
CountryUnited States
CityChicago
Period17/10/2122/10/21
Internet address

Fingerprint

Dive into the research topics of 'Trampoline Variables: A General Method for State Accumulation in Reactive Programming'. Together they form a unique fingerprint.

Cite this