[GUI] Future of Haskell: GUI development

Simon Peyton-Jones simonpj at microsoft.com
Mon Sep 15 11:00:33 EDT 2003


I'm glad to see the recent flurry on the GUI mailing list.  I think what
is now going on is this:

    We're trying to build a critical-mass of effort and 
    commitment behind one GUI binding

    NOT to exclude other approaches (because diversity is good)

    but rather to have enough smart people co-operating that
    there is some chance that programs written against this
    API/binding have some chance of working on 
	a variety of platforms (a particularly tricky issue with GUIs) 
	and a variety of Haskell implementations
	and stay working over a period of time

GUIs have very wide interfaces, so doing anything viable is a lot of
work.  Doing it for lots of platforms is even more work.   A big
advantage of the Wx approach is that it lets us piggy-back on a much
larger effort that has very similar multi-platform goals.  Wx isn't
perfect -- the Mac menu bar thing seems a case in point -- but at least
the Wx crew have exactly the same problem, so there is reason to suppose
that the situation may improve.  And it does seem to be good enough; by
which I mean that it would be hard to improve on, given our effort
budget.

It's definitely the case that we don't want to program in Wx directly.
As Daan mentions, he already has a draft Haskell-ised version of the
API, whose design has been discussed quite a bit on this list, and which
shares a lot in common with Krasimir's approach.  I have the impression
that the broad design of the Haskell-ised layer are acceptable to pretty
much everyone.  But I'm sure Daan wouldn't regard them as cast in stone.


As a consumer of this work, my earnest hope is that several smart and
productive people will be prepared to work together on the design,
implementation, and multi-platform porting of a Hakellised WX interface;
and on doing a forest of related projects (port Fudgets, make GUI
builder...).   Although Daan has done great work getting this Wx stuff
started, it's too big a job for one person even if he did nothing else
(and Daan is far from being in that position).   And again as a
consumer, I feel much more confident in using something that has a wide
support base rather than something that depends critically on one
person.

There are many very talented people contributing to this discussion (in
no particular order, Nick Name, Wolfgang Thaller, Axel Simon, Krasimir
Angelov, David Roundy, Wolfgang Jeltsch, Manuel Chakravarty, Daan
Leijen, David Sankel, Anthony Courtney, George Russel, Peter Aachten,
Adrian Hey, John Meacham, to name only recent contributors).  Let's hope
that from this mix, enough of a critical mass will emerge to make this
really work.

Simon 



More information about the GUI mailing list