Skip to search boxSkip to navigationSkip to main content

Asynchronous Modal FRP

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Open access

Publication Information

Output type

Research Output:
Journal Article or Conference Article in Journal
Journal article
Peer-review

Original language

English

Article number

205

Pages from-to (Number of pages)

Pages 476-510

Journal (Volume, Issue Number)

Proceedings of the ACM on Programming Languages (Volume 7, Issue ICFP)

Publication milestones

  • Published - 31/08/2023

Publication status

Published - 31/08/2023

Publication IDs

  • Scopus: 85170637086

Abstract

Over the past decade, a number of languages for functional reactive programming (FRP) have been suggested, which use modal types to ensure properties like causality, productivity and lack of space leaks. So far, almost all of these languages have included a modal operator for delay on a global clock.

For some applications, however, a global clock is unnatural and leads to leaky abstractions as well as inefficient implementations.

While modal languages without a global clock have been proposed, no operational properties have been proved about them, yet. This paper proposes Async RaTT, a new modal language for asynchronous FRP, equipped with an operational semantics mapping complete programs to machines that take asynchronous input signals and produce output signals. The main novelty of Async RaTT is a new modality for asynchronous delay, allowing each output channel to be associated at runtime with the set of input channels it depends on, thus causing the machine to only compute new output when necessary. We prove a series of operational properties including causality, productivity and lack of space leaks. We also show that, although the set of input channels associated with an output channel can change during execution, upper bounds on these can be determined statically by the type system.

Publication metrics

PlumX, opens in new tab

Captures
5
Citations
2

Funding Details

Related to research grant `Alegro - Algebraic Effects and Guarded Recursion´ funded by DFF - Independent Research Fund Denmark
FundersFunding numbers
DFF
-