Adjoint Reactive GUI

10/23/2020
βˆ™
by   Christian Uldal Graulund, et al.
βˆ™
0
βˆ™

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 block of GUIs, which offers both a natural Curry–Howard logical interpretation and an efficient implementation strategy.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
βˆ™ 08/20/2019

Reactive Probabilistic Programming

Synchronous reactive languages were introduced for designing and impleme...
research
βˆ™ 03/28/2018

Vehicle Platooning Simulations with Functional Reactive Programming

Functional languages have provided major benefits to the verification co...
research
βˆ™ 03/14/2019

Simply RaTT: A Fitch-style Modal Calculus for Reactive Programming

Functional reactive programming (FRP) is a paradigm for programming with...
research
βˆ™ 03/14/2019

Simply RaTT: A Fitch-style Modal Calculus for Reactive Programming without Space Leaks

Functional reactive programming (FRP) is a paradigm for programming with...
research
βˆ™ 02/14/2020

Gavial: Programming the web with multi-tier FRP

Developing web applications requires dealing with their distributed natu...
research
βˆ™ 08/03/2023

Density-Based Semantics for Reactive Probabilistic Programming

Synchronous languages are now a standard industry tool for critical embe...
research
βˆ™ 01/30/2020

Diva: A Declarative and Reactive Language for In-Situ Visualization

The use of adaptive workflow management for in situ visualization and an...

Please sign up or login with your details

Forgot password? Click here to reset