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.
This is a paper from the proceedings of the Haskell Workshop. A very good read. Modelling a GUI as a relationship among signals may well turn out to be a very useful approach. The toolkit uses arrows, which are described in this paper if you're interested in the background.
Posted to functional by Bryn Keller on 9/7/01; 11:55:11 AM