Write a Blog >>
ICFP 2020
Thu 20 - Fri 28 August 2020
Thu 27 Aug 2020 15:30 - 16:00 at Haskell - Paper Session 2 - Animations and Demonstrations Chair(s): Exequiel Rivas

Programming time-dependent signals like animations involves expressing both continuous and discrete changes in signal values. The method of functional reactive programming (FRP) represents this simply and effectively as discrete modes of an otherwise continuous signal. In variants of FRP based on arrows, programs are composed not of signals but rather functions on signals. Accordingly, these signal functions can switch between discrete modes of operation. However, the literature emphasizes expressions of mode switching that are unnecessarily limited. An analysis of their limitations indicates the need for two new, primitive transformations of signal functions. These transformations help to define a monad that represents signal function modes, and this allows programmers to express switching in an imperative, script-like style. This scripting interface gains flexibility and power from several novel operations, including a general-purpose mapping between modes and a combination that mixes two concurrent modes into one. We demonstrate its usefulness with several examples.

Thu 27 Aug

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

14:30 - 16:10
Paper Session 2 - Animations and DemonstrationsHaskell at Haskell
Chair(s): Exequiel Rivas Inria Paris
14:30
30m
Talk
A Low-Latency Garbage Collector for GHC (Demo)
Haskell
Ben Gamari Well-Typed LLP, Laura Dietz University of New Hampshire
15:00
30m
Talk
Relational Lenses as a Library (Demo)
Haskell
Rudi Horn University of Edinburgh
File Attached
15:30
30m
Talk
Scripted Signal Functions
Haskell
DOI
16:00
10m
Other
PC Chair Report
Haskell
Tom Schrijvers KU Leuven