Version française
Home     About     Download     Resources     Contact us    
Browse thread
Preferred GUI Toolkit for O'Caml 3?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Pascal Cuoq <Pascal.Cuoq@i...>
Subject: Re: Preferred GUI Toolkit for O'Caml 3?
>    -  mlgtk      [ (+) Gtk+ is nicer than Tk (and no-Tcl is nicer than Tcl)
>                    (-) is it ported to everything but the kitchen sink? ]
> 
>    -  lablgtk    [ same a mlgtk, plus
>                    (-) still beta
>                    (+) appears(!) to have the slickest API ]

Since Jacques defines "beta" as "the API might change later",
I should point out that mlgtk has had its share of these changes in
the past, and some more may be required in the future.

Personally, I am still working on mlgtk although there are very competent
people working on lablgtk because:

1) it is fun.  It looks good when it works, and when you're tired
   of watching it look good and work well, you change your gtk theme 
   and it feels like you just wrote another toolkit interface, which
   looks good too.

2) some people are actually using it.

Sven, who maintains mlgtk too, told me once that he himself actually 
used it, so that's one more reason why mlgtk should last for a while.

This said, at the time I was recruited to work on mlgtk I had no 
opinion about labels and optional arguments, and now I do: they are
definitely the way to go for a widget library.

There are other differences between the two libraries, because
they were written completely independently.  mlgtk is less object-oriented
in the sense that it relies on module abstraction to be essentially
type-safe from the outside.  I think that lablgtk is completely
type safe, but it has more complicated object hierarchies (if I understood
correctly).

Pascal Brisset, who wrote the interface between mlgtk and native threads,
seemed to be saying that threads were better in mlgtk too :) but that
may have changed...

Pascal