From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 7F498BBAF for ; Wed, 24 Nov 2010 00:06:28 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArMBAB/Y60zRVdQ0kGdsb2JhbACUOI4tCBUBAQEBCQkMBxEDH6Qgi3yFCokHAQEDBYVGBIRYhgaFfoMw X-IronPort-AV: E=Sophos;i="4.59,244,1288566000"; d="scan'208";a="80077338" Received: from mail-vw0-f52.google.com ([209.85.212.52]) by mail4-smtp-sop.national.inria.fr with ESMTP; 24 Nov 2010 00:06:27 +0100 Received: by vws3 with SMTP id 3so4788449vws.39 for ; Tue, 23 Nov 2010 15:06:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type; bh=wATVgYvud98Qzauo0aPMEusJnOYfcu7iUctvDyJ5OdE=; b=tD4/OLXR59FeJVQaZmzxPq7YxKtL5Nod2ft3GO7vqnpYwgHfZwT2QWP6VbYeprBd48 +sC/LY/YMdPg7Daj3bZt8o1DW5fZRXBDJoh8OgNoqo1+bOwsStN//KaFf4u8lkuyOQms uIwHnNlPe7chVV+wsI77PuQWKD7ur5Nunjfec= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=czUiLfEiNDfpm1Xpc2Af7bPPoR63vAo5fgZRZZixWmDv4yCQKrNHk7CyaE07eM6mgf 11YvqtUAh+Lz0mszCKCywl4mbZc25xBDoM/NS5DoOODFRjjKBG1PU5Ct8/2iERNNdLS3 jD/ZO+qLyTRFf8+1isgG94qRn9sJvTHFKbFfE= MIME-Version: 1.0 Received: by 10.229.75.3 with SMTP id w3mr4016542qcj.83.1290553586215; Tue, 23 Nov 2010 15:06:26 -0800 (PST) Sender: jacques.garrigue@gmail.com Received: by 10.220.98.82 with HTTP; Tue, 23 Nov 2010 15:06:25 -0800 (PST) In-Reply-To: References: Date: Wed, 24 Nov 2010 08:06:25 +0900 X-Google-Sender-Auth: GfR8OymiETqPqDaVAoupOA0mcgo Message-ID: Subject: Re: [Caml-list] Desktop GUI toolkits - current state of the art? From: Jacques Garrigue To: Martin DeMello Cc: OCaml List Content-Type: text/plain; charset=ISO-8859-1 X-Spam: no; 0.00; lablgtk:01 lablgtk:01 gtk:01 gtk:01 verbose:01 labltk:01 labltk:01 ocaml:01 ocaml:01 bindings:01 syntax:01 beginner's:01 bug:01 23,:98 beginners:01 I'm not sure which examples you looked at for lablgtk2. The goals of lablgtk are: * be as close as possible to the spirit of Gtk+ * while providing type and memory safety * and allow comfortable use through objects and optional arguments This resulted in a 2-layer implementation, with a lower layer that just wraps basic Gtk+ calls, and an object layer on top of it. Some examples mix the two layers, which may look strange, but I think that when you use only the upper layer, this is clean enough. (The lower layer is not dirty, but converting between the two may be verbose and look clumsy). The obvious alternative to lablgtk2 is of course labltk. I personally think that labltk is still the easiest way to build a GUI, but many do not like Tk's look&feel. I'm not aware of other GUI toolkits for ocaml, but I think there are also web-based UIs. Jacques Garrigue On Tue, Nov 23, 2010 at 11:19 PM, Martin DeMello wrote: > What are the actively developed options for writing desktop GUI apps > in OCaml? Anything other than lablgtk2 (which, at least from a brief > look through the examples, looks rather ugly, codewise, compared to, > say, vala or ruby/gtk)? I'll use lablgtk2 in a pinch, but I'm curious > as to whether anyone has been experimenting with toolkit bindings with > an eye towards better syntax and APIs. > > (Note that I don't care about a native look and feel, I'm more > interested in how the code looks.) > > martin > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs >