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

Arrowized Functional Reactive Programming (AFRP) is one approach to writing reactive programs declaratively, based on the arrows abstraction in Haskell. While AFRP elegantly expresses the relationships between inputs and outputs of a reactive system, naïve implementations suffer from poor performance. In particular, the \textit{loop} combinator depends on lazy semantics: this inflicts the overheads of lazy evaluation and simultaneously prevents existing optimisation techniques from being applied to it.

We present a novel program transformation which utilises the Arrow and ArrowLoop laws to transform typical uses of \textit{loop} into restricted forms that have an execution order that is known at compile-time and therefore can be executed strictly. We evaluate the performance gained from our transformations and prove that the transformations are correct.

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