[GUI] Re: GUI Library Task Force

Manuel M. T. Chakravarty chak@cse.unsw.edu.au
Wed, 26 Sep 2001 12:39:33 +1000


Andy Gill <andy@galconn.com> wrote,

> "Manuel M. T. Chakravarty" wrote:
> 
> > * I am not a big fan of introducing an extra monad (`GUI' in
> >   this case).  It can easily become a pain in programs that
> >   do a lot of "normal" IO as you have to lift all IO
> >   functions to GUI.
> 
> So you want various IO operations, that act not only in the IO monad,
> but in other monads also? Perhaps something like
> 
>   putStrLn :: (MonadIO io) => String -> io ()
> 
> Then writing you IO operations inside your GUI becomes trivial.

Nice idea, but unfortunately the H98 standard library and
HsLibs are not implemented in that way.  So, it doesn't
really solve the problem at hand, because we would need to
wrap all existing IO functions.

But your approach is certainly something which should be
kept in mind for the next revision of Haskell.

Cheers,
Manuel