ICFP 2023
Mon 4 - Sat 9 September 2023 Seattle, Washington, United States
Fri 8 Sep 2023 11:30 - 12:00 at B - Fifth Avenue - Haskell: Session 1 Chair(s): Edsko de Vries

Reactive programming, functional reactive programming, event-based programming, stream programming, and temporal logic all share an underlying commonality: values can vary over time. These languages differ in multiple ways, including the nature of time itself (e.g., continuous or discrete, dense or sparse, implicit or explicit), on how much of the past and future can be referenced, on the kinds of values that can be represented, as well as the mechanisms used to evaluate expressions or formulas. This paper presents a series of abstractions that capture the essence of different forms of time variance. By separating the aspects that differentiate each family of formalisms, we can better express the commonalities and differences between them. We demonstrate our work with a prototype in Haskell that allows us to write programs in terms of a generic interface that can be later instantiated to different abstractions depending on the desired target.

Fri 8 Sep

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

11:00 - 12:30
Haskell: Session 1Haskell at B - Fifth Avenue
Chair(s): Edsko de Vries Well-Typed LLP
11:00
30m
Talk
Effect Handlers for Programmable Inference
Haskell
Minh Nguyen University of Bristol, Roly Perera Alan Turing Institute, Meng Wang University of Bristol, Steven Ramsay University of Bristol
DOI
11:30
30m
Talk
The Essence of Reactivity
Haskell
Ivan Perez NASA Ames Research Center, Frank Dedden System F Computing
DOI
12:00
30m
Talk
This Is Driving Me Loopy: Efficient Loops in Arrowized Functional Reactive Programs
Haskell
Finnbar Keating University of Warwick, Michael Gale GitHub
DOI