gui building in haskell

Jan Kort kort@wins.uva.nl
Mon, 15 Jan 2001 20:24:08 +0100


Matthew Liberty wrote:
> 
> Greetings,
> 
> I've been looking at http://www.haskell.org/libraries/#guis and trying
> to figure out which package is "best" for building a gui.  Can anyone
> give a comparison of the strengths/weaknesses of these packages (or any
> others)?

Hi Matt,

When Manuel's Haskell GTK+ binding (gtkhs) is finished it will
be really cool.

On top of gtkhs there are/will be many other libraries and tools:
- iHaskell: a high level GUI library that avoids the eventloop
  mess.
- GtkGLArea: 3D graphics in your GTK+ application using Sven's HOpenGL.
- GUI painter: All you need is a backend for Glade. I'm currently
  working on this. Or at least I was half a year ago, other (even
  more interesting) things claimed most of my spare time.

Of course this will all take a while to come to a beta release.

FranTk is currently the only high level interface that
is in beta. There is no release for ghc4.08, but it
takes only a day or so to get it working.

In short: use FranTk now or wait a year and use gtkhs.

The reason there are so many GUI libraries on the web page is
that nothing ever gets removed. Most of the libraries are
no longer supported.

I only realized after making the table that it was a bit
redundant, but since I spend 10 mins getting the stuff
lined up properly (please don't tell me you have a
proportional font) you'll have to suffer through it:

+------------+--------+-------+-----+------+------+
| GUI lib    | Status | Level | W98 | Unix | OS X |
+------------+--------+-------+-----+------+------+
| TclHaskell | beta   | low   | yes | yes  |      |
| Fudgets    | alpha*)| high  | no  | yes  |      |
| gtkhs      | alpha  | low   |     | yes  |      |
| iHaskell   |        | high  |     |      |      |
| FranTk     | beta   | high  | yes | yes  |      |
+------------+--------+-------+-----+------+------+
| Haggis     | dead   | high  | no  | yes  |      |
| Haskell-Tk | dead   |       |     |      |      |
| Pidgets    | dead   |       |     |      |      |
| Budgets    | dead   |       |     |      |      |
| EmbWin     | dead   |       |     |      |      |
| Gadgets    | dead   |       |     |      |      |
+------------+--------+-------+-----+------+------+

*) I thought Fudgets was dead, but apparently it has been revived.
   You might want to check that out too, although it has the words
   "hackers release" all over it (literaly).

Status: alpha/beta
        I guess "dead" sounds a bit rude. It means that I couldn't
        find a distribution or it would take too much effort to get
        it working.
Level:  low:  Raw calls to C library.
        high: More functional style.
W98:    Wether it works on Windows 95/98/ME with ghc4.08.
Unix:   Same for Unix (Solaris in my case).
OS X:   Same for Macintosh OS X.

Hope this helps,
  Jan