[Haskell] ANNOUNCE: Phooey -- a Functional UI library for Haskell
brianh at metamilk.com
Tue Dec 12 04:21:25 EST 2006
From: Conal Elliott
To: haskell at haskell.org
Sent: Tuesday, December 12, 2006 7:17 AM
> GUIs are usually programmed in an "unnatural" style, in that
> dependencies are inverted, relative to logical dependencies. This reversal
> directly from the imperative orientation of most GUI libraries. While
> depend on inputs from a user and semantic point of view, the imperative
> imposes an implementation dependence of inputs on outputs.
This looks really interesting, but I'm struggling to understand what you
mean by "reversal". Can you elaborate on what you mean by "the imperative
approach imposes an implementation dependence of inputs on outputs." In the
model-view-controller pattern for example, I see no such reversal.
Also, suppose you have a gui consisting of an edit widget such that when the
user types something it gets lexed, parsed, and fontified as a Haskell
program, ie from the user's point of view the widget maintains a syntax
highlighted view of the code which is "continuously" updated. Would your
system do the lexing/parsing for every key that was pressed or only once,
when the widget needs to be re-rendered (a typical gui for Windows would
only propagate changes and re-draw the gui (ie lex/parse/fontify) when there
are no event messages pending)?
In other words, does your system solve the problem of automatic caching of
updates that would be solved in the imperative setting by the (admittedly
rather messy) waiting for "nothing else happening"?
Haskell mailing list
Haskell at haskell.org
More information about the Haskell