caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Daan Leijen <daan@cs.uu.nl>
To: SooHyoung Oh <shoh@compiler.kaist.ac.kr>
Cc: Caml Mailing List <caml-list@inria.fr>,
	"chris.danx" <chris.danx@ntlworld.com>
Subject: Re: [Caml-list] WxWidgets?
Date: Fri, 17 Sep 2004 09:13:15 +0200	[thread overview]
Message-ID: <414A8E8B.9040005@cs.uu.nl> (raw)
In-Reply-To: <002801c49c4a$265dc910$1501a8c0@hama>

[-- Attachment #1: Type: text/plain, Size: 3463 bytes --]

SooHyoung Oh wrote:

>I've followed wxHaskell method and implemented some of widgets
>with Ocaml.
>Implementing all of widgets of wxEiffel C wrapper requires much time,
>so I'm finding more systematic method.
>
>Can you give me more hints about your comments about
>how to generate Ocaml binding using wxDirect?
>  
>
Well,  I think I would rewrite wxDirect -- it is not that much work to 
do this
for OCaml  (maybe 3 days?).  Anyway, wxDirect takes a C header file that
contains *all* wxWidgets wrapper declarations and creates Haskell signatures
from them. As described in the paper, the C header file is somewhat special
as it contains a lot of extra type information (in the form of macros) 
that you
need to generate a proper marshaller. The C header is thus a poor-mans IDL.

We can get away with this, as the number of types and marshalling 
required is
really simple for wxWidges, it is basically integers and pointers to 
objects: no
structures, arrays, general pointers, or nested types.

Anyway, I would also advice you to contact the student I mentioned in my
previous mail -- unfortunately I forgot his name (Francois ?)  I think 
he is a
student of Didier Remy? (or at least another well-known French computer 
scientist).
Anyhow, he made a lot of progress with a wxOCaml binding and from his 
mails I
got the impression that he did a thorough job. I think it can save a lot 
of work to start
from his library.

All the best,
  Daan Leijen.


>Thanks.
>
>----- Original Message ----- 
>From: "Daan Leijen" <daan@cs.uu.nl>
>To: "Caml Mailing List" <caml-list@inria.fr>
>Sent: Friday, September 17, 2004 7:00 AM
>Subject: Re: [Caml-list] WxWidgets?
>
>
>  
>
>>Hi all,
>>
>>I have created a binding from Haskell to wxWidgets, called wxHaskell.
>>You can find more information (and nice screenshots) at
>><wxhaskell.sourceforge.net>
>>There is also a paper about it at <www.cs.uu.nl/~daan/pubs.html>
>>
>>I also know that there is a student in France that has made a lot of
>>progress
>>on an O'Caml binding to wxWidgets (as he contacted me a few times
>>about technical issues). He also used the wxEiffel C wrapper (that
>>    
>>
>wxHaskell
>  
>
>>uses)
>>
>>Personally, I am very impressed with wxWidgets: wxHaskell works
>>very well across the main platforms (MacosX, Windows, and GTK)
>>and is quite stable. It is also nice that wxWidgets uses native controls
>>on each platform, giving an application native look-and-feel.
>>
>>A particularly pragmatic route to implementing a wxWidgets binding
>>to wxHaskell would adapt the wxDirect program of wxHaskell to generate
>>O'Caml bindings and just copy the wxHaskell model -- it would fit O'Caml
>>quite well, especially when OCaml objects are used to model the C++
>>    
>>
>classes.
>  
>
>>Anyway, I hope this helps,
>>All the best,
>> Daan Leijen.
>>
>>[ps. I probably won't  respond to this thread anymore as I am going to
>>ICFP.]
>>
>>-------------------
>>To unsubscribe, mail caml-list-request@inria.fr Archives:
>>    
>>
>http://caml.inria.fr
>  
>
>>Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ:
>>    
>>
>http://caml.inria.fr/FAQ/
>  
>
>>Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>>
>>
>>    
>>
>
>-------------------
>To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
>Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
>Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>
>
>  
>


[-- Attachment #2: Type: text/html, Size: 5364 bytes --]

  parent reply	other threads:[~2004-09-17  7:13 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-16 20:08 chris.danx
2004-09-16 20:25 ` Richard Jones
2004-09-16 21:29   ` chris.danx
2004-09-16 21:39     ` Richard Jones
2004-09-16 22:00       ` Daan Leijen
2004-09-17  0:06         ` SooHyoung Oh
2004-09-17  4:39           ` skaller
2004-09-17  7:13           ` Daan Leijen [this message]
2004-09-17  8:04             ` Jean-Marc EBER
2004-09-19 21:46         ` François-Xavier HOUARD
2004-09-16 23:58       ` chris.danx
2004-09-17  8:10         ` Richard Jones
2004-09-17 12:38     ` Olivier Andrieu
2004-09-17 13:11       ` chris.danx
2004-09-17 13:51         ` skaller
2004-09-17 18:31           ` Brian Hurt
2004-09-17  7:53   ` Benedikt Grundmann
2004-09-16 20:44 ` Micha
2004-09-16 20:56 ` Basile STARYNKEVITCH
2004-09-20  1:02 ` [Caml-list] WxWidgets? - wxcaml SooHyoung Oh
2004-09-21 23:21   ` Zeno

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=414A8E8B.9040005@cs.uu.nl \
    --to=daan@cs.uu.nl \
    --cc=caml-list@inria.fr \
    --cc=chris.danx@ntlworld.com \
    --cc=shoh@compiler.kaist.ac.kr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).