From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id E6243BC75 for ; Wed, 2 Mar 2005 15:44:53 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j22EireL002840 for ; Wed, 2 Mar 2005 15:44:53 +0100 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id PAA16551 for ; Wed, 2 Mar 2005 15:44:52 +0100 (MET) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j22Eipfd018749 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Wed, 2 Mar 2005 15:44:52 +0100 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1D6Ut0-00035u-UF for caml-list@inria.fr; Wed, 02 Mar 2005 15:31:39 +0100 Received: from host249-94.pool80182.interbusiness.it ([80.182.94.249]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 02 Mar 2005 15:31:38 +0100 Received: from vincenzo_yahoo_addressguard-gmane by host249-94.pool80182.interbusiness.it with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 02 Mar 2005 15:31:38 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: caml-list@inria.fr From: Vincenzo Ciancia Subject: Re: Cross-platform "Hello, World" graphical application in OCaml Date: Wed, 02 Mar 2005 15:30:46 +0100 Message-ID: References: <20050223054011.3414.28936.Mailman@yquem.inria.fr> <5fc951a0050301223646a48b5e@mail.gmail.com> <20050302114025.GA17540@furbychan.cocan.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: host249-94.pool80182.interbusiness.it User-Agent: KNode/0.8.2 Sender: news X-Gmane-MailScanner: Found to be clean X-Gmane-MailScanner: Found to be clean X-MailScanner-From: gclci-caml-list@m.gmane.org X-MailScanner-To: caml-list@inria.fr X-Miltered: at concorde with ID 4225D165.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 4225D163.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; ocaml:01 ocaml:01 gtk:01 api:01 haskell:01 haskell:01 sourceforge:01 sourceforge:01 abstracted:01 imho:01 bindings:01 non-issue:01 cocoa:98 vogue:98 attenzione:98 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: Richard Jones wrote: > > What I think would be useful is an OCaml wrapper around Gtk, Win32 and > Aqua/COCOA. The idea would be for the OCaml wrapper to abstract away > the differences, allowing cross-platform programming with native > widgets. WxWidgets fits the bill here, but the actual API is clunky. > I have a feeling that something could be done better with a functional > programming approach. This has been proposed, discussed and forgotten more than one time on the haskell-gui mailing list (of course, s/ocaml/haskell/). The most promising projects for haskell in this area are htoolkit and wxhaskell: http://htoolkit.sourceforge.net/ http://wxhaskell.sourceforge.net/ I think that to do a serious effort in this direction involves both designing the abstracted interface, which is nontrivial and perhaps can't be done much better than wxwidgets, and implementing it - in a way, IMHO, that can be used by more than one language. Wx fails in that direction, since it's written in C++ - there are wxcaml and wxhaskell of course, but they seem to require lots of manual tuning to complete the bindings (don't take this too seriously, I might be plain wrong). Since XML user interfaces are in vogue these days, maybe the best thing to do is to implement one of these, fulfilling the required properties, and then binding for any language will be easy. Of course, it won't be too efficient but when I see web pages that render faster and look smarter than my "efficient" desktop I think that this is a non-issue. Vincenzo -- Please note that I do not read the e-mail address used in the from field but I read vincenzo_ml at yahoo dot it Attenzione: non leggo l'indirizzo di posta usato nel campo from, ma leggo vincenzo_ml at yahoo dot it