Gtk and Object I/O

Nick Name nick.name@inwind.it
Fri, 17 Jan 2003 21:12:51 +0100


On Fri, 17 Jan 2003 15:12:55 +0000
Axel Simon <A.Simon@ukc.ac.uk> wrote:

> Two answers: "Me too." and "I am.". But how can we proceed from here?
> 
>  I think we should all be more flexible and communicate more openly
>  and earlier. The latter probably would have avoided that I went off
>  and did my own Gtk binding.

I am reading a lot of stuff regarding high level functional GUIs. It
seems to me that the most fascinating ideas come from FRAN, which
develops a model of continuous signals (and this is really rare in a GUI
system, though useful) and of discrete events. Besides, representing
GUIs as arrows is well-studied in FRAN, and also there is an algebra of
behaviours and events (IE: given two events A and B, which produce the
same type of signal, one can for example create the event (A or B) with
a pure function returning a signal). Programming with FRAN is very
similar to the design of a circuit.

The Port library seemed to me (absolutely not to offend Manuel) a little
more primitive.

Anyway, I need still to fully understand arrows, and to study objectIO;
In march/april I need to take a thesis to graduate, and it will probably
be about effects systems; my idea is that with an effect system, wich
needs to be simulated in Haskell (this is an argument for the Haskell
mailing list) one could have a true model-view-presenter GUI program:
the view, for example, would be bound to graphics-related side effects.

Another point of interest for a functional GUI is the newcoming .NET
interest. .NET already has three implementations, and it seems to me
that verifyable bytecode would be a good starting point to implement an
effect system.

I hope that we all will take time to investigate what we really want and
what we really can obtain from an Haskell GUI toolkit, and that there
will be some feature that will make this system more interesting than,
say, C# for quality software production.

Vincenzo

-- 
Teatri vuoti e inutili potrebbero affollarsi
se tu ti proponessi di recitare te
[CCCP]