Fruit is a new graphical user interface library for Haskell based on a formal model of user interfaces. The model identifies signals (continuous time-varying values) and signal transformers (pure functions mapping signals to signals) as core abstractions, and defines GUIs compositionally as signal transformers. In this paper, we describe why we think a formal denotational model of user interfaces is useful, present our model and prototype library implementation, and show some example programs that demonstrate novel features of our library.
%0 Conference Paper
%1 courtney2001genuinely
%A Courtney, Antony
%A Elliott, Conal
%B Haskell Workshop
%D 2001
%K 00a72-general-methods-of-simulation 68n18-functional-programming-and-lambda-calculus frp haskell
%P 41-69
%T Genuinely functional user interfaces
%U http://webdoc.sub.gwdg.de/ebook/serien/ah/UU-CS/2001-62.pdf#page=47
%X Fruit is a new graphical user interface library for Haskell based on a formal model of user interfaces. The model identifies signals (continuous time-varying values) and signal transformers (pure functions mapping signals to signals) as core abstractions, and defines GUIs compositionally as signal transformers. In this paper, we describe why we think a formal denotational model of user interfaces is useful, present our model and prototype library implementation, and show some example programs that demonstrate novel features of our library.
@inproceedings{courtney2001genuinely,
abstract = {Fruit is a new graphical user interface library for Haskell based on a formal model of user interfaces. The model identifies signals (continuous time-varying values) and signal transformers (pure functions mapping signals to signals) as core abstractions, and defines GUIs compositionally as signal transformers. In this paper, we describe why we think a formal denotational model of user interfaces is useful, present our model and prototype library implementation, and show some example programs that demonstrate novel features of our library.},
added-at = {2023-09-15T02:57:28.000+0200},
author = {Courtney, Antony and Elliott, Conal},
biburl = {https://www.bibsonomy.org/bibtex/2cf816d9fecea159f067e0b3a7018c5a4/gdmcbain},
booktitle = {Haskell Workshop},
interhash = {94263ea27f04e9e2087b1542be7449a0},
intrahash = {cf816d9fecea159f067e0b3a7018c5a4},
keywords = {00a72-general-methods-of-simulation 68n18-functional-programming-and-lambda-calculus frp haskell},
month = sep,
pages = {41-69},
timestamp = {2023-09-15T14:15:11.000+0200},
title = {Genuinely functional user interfaces},
url = {http://webdoc.sub.gwdg.de/ebook/serien/ah/UU-CS/2001-62.pdf#page=47},
year = 2001
}