[Haskell] Arrows GUI Library Based on GTK+

Kevin Atkinson kevina at cs.utah.edu
Sat Mar 19 12:19:02 EST 2005


On Sat, 19 Mar 2005, David Menendez wrote:

> Kevin Atkinson writes:
> 
> > 
> > What follows is my first attempt of using Arrows to create a GUI
> > Library based on GTK+.  It uses many ideas from Fruit
> > (http://haskell.org/fruit/). However it is based on discrete events
> > rather than a continuous signal. The interface is only updated during
> > an Event. It also ideas from Fudgets
> > (http://www.md.chalmers.se/Cs/Research/Functional/Fudgets/), some of
> > which were also used by Fruit.
> > 
> > To the best of my knowledge this has note been attempted before as
> > Fruit is not based on an existing GUI.
> 
> Are you familiar with wxFruit[1]? It adapts Fruit to run on wxHaskell.
> 
> [1] <http://zoo.cs.yale.edu/classes/cs490/03-04b/bartholomew.robinson/>

No I was not originally aware of this.  I had a brief look at the paper.  
Unlike my module, it was written on top of the Yampa AFRP module.  It thus 
inherits some of the inherited problems of Yampa, the main one is that is 
that widgets are continuously being updated, even if there are no user 
actions.

The continuous updates avoided the problem of having to traverse the Arrow 
structure twice in the case of loops.  This is because the output of the 
underlying Arrow inside the loop will be feed back in during the next 
iteration.  I image that if they took away the continuous updates they would 
have the same problems that I have in implementing loops.

-- 
http://kevin.atkinson.dhs.org



More information about the Haskell mailing list