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 --]
next prev 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