[Haskell] Arrows GUI Library Based on GTK+
kevina at cs.utah.edu
Sat Mar 19 12:51:13 EST 2005
On Sat, 19 Mar 2005 ross at soi.city.ac.uk wrote:
> On Sat, Mar 19, 2005 at 07:48:09AM -0700, Kevin Atkinson wrote:
> > Has anyone tried to make Fudgets an instance of the Arrow class?
> see the stream processors in John Hughes's original paper.
I will have a closer look.
> > > - how about: data Event a = NoEvent | Event a
> > And what would "a" be?
> The thing you currently always pair with an Event, and ignore if it's
But that value may also be used even if there is not an event. For
example you may want to read the current value of an Entry or a
> > > - you don't really need mkAFunDef in AbstractFunction, and indeed you
> > > don't need AbstractFunction either -- you could just use Arrow, of
> > > which both (->) and FG are already instances.
> > But than can I make a function like "tag" which can either be used as an
> > arrow or a function.
> But functions are arrows: (->) is an instance of the Arrow class.
But of separate Arrow instances. For example if I redefine tag from
tag :: (AbstractFunction f) => b -> f (Event, a) (Event, b)
tag v = mkAFun (\(e, _) -> (e, v))
tag :: b -> (Event, a) -> (Event, b)
tag v = \(e, _) -> (e, v)
Than I couldn't do as I gave in my example:
a <- tag "a" <<< button  -< def
More information about the Haskell