Adjoint Reactive GUI
Christian Uldal Graulund, Dmitrij Szamozvancev, Neel Krishnaswami

TL;DR
This paper introduces an asynchronous Functional Reactive Programming language, λ_Widget, for GUI design that improves efficiency by allowing GUIs to sleep until new data arrives, addressing limitations of synchronous FRP systems.
Contribution
The paper presents λ_Widget, a novel asynchronous FRP language with a new widget semantics that enables efficient, declarative GUI programming with a logical interpretation.
Findings
Provides a new semantics for GUI widgets
Enables GUIs to sleep until data arrives
Offers an efficient implementation strategy
Abstract
Most interaction with a computer is done via a graphical user interface. Traditionally, these are implemented in an imperative fashion using shared mutable state and callbacks. This is efficient, but is also difficult to reason about and error prone. Functional Reactive Programming (FRP) provides an elegant alternative which allows GUIs to be designed in a declarative fashion. However, most FRP languages are synchronous and continually check for new data. This means that an FRP-style GUI will "wake up" on each program cycle. This is problematic for applications like text editors and browsers, where often nothing happens for extended periods of time, and we want the implementation to sleep until new data arrives. In this paper, we present an asynchronous FRP language for designing GUIs called . Our language provides a novel semantics for widgets, the building…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Advanced Software Engineering Methodologies
