Version française
Home     About     Download     Resources     Contact us    
Browse thread
Re: [Caml-list] Cross-platform "Hello, World" graphical application in OCaml
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Vincenzo Ciancia <vincenzo_yahoo_addressguard-gmane@y...>
Subject: Re: Cross-platform "Hello, World" graphical application in OCaml
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