From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id SAA08421; Sun, 6 Jun 2004 18:02:48 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id SAA08140 for ; Sun, 6 Jun 2004 18:02:47 +0200 (MET DST) Received: from mail.lindows.com (mail.lindows.com [130.94.123.204]) by concorde.inria.fr (8.12.10/8.12.10) with ESMTP id i56G2jSH022217 for ; Sun, 6 Jun 2004 18:02:46 +0200 Received: by mail.lindows.com (Postfix, from userid 8) id 8506C44C855; Sun, 6 Jun 2004 09:03:14 -0700 (PDT) Received: from lindows.com (adsl-63-196-84-93.dsl.sndg02.pacbell.net [63.196.84.93])by mail.lindows.com (Postfix) with ESMTPid EEC033E79C7; Sun, 6 Jun 2004 09:03:13 -0700 (PDT) Message-ID: <40C34024.7060900@lindows.com> Date: Sun, 06 Jun 2004 09:02:44 -0700 From: David Fox User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20040414 Debian/1.5-2.0.0.lindows0.0.67.45+0 X-Accept-Language: en-us, en MIME-Version: 1.0 To: skaller@users.sourceforge.net Cc: John Goerzen , erayo@cs.bilkent.edu.tr, ronniec95@lineone.net, caml-list Subject: Re: [Caml-list] Efficient C++ interfacing? References: <40800C10000A6ABC@mk-cpfrontend-4.mail.uk.tiscali.com> <200406051945.14906.exa@kablonet.com.tr> <1086462462.16811.577.camel@pelican.wigram> <200406060331.05195.exa@kablonet.com.tr> <20040606033327.GA23341@complete.org> <1086505241.16811.625.camel@pelican.wigram> In-Reply-To: <1086505241.16811.625.camel@pelican.wigram> Content-Type: multipart/alternative;boundary="------------020009070809010304040300" X-Lindows-Footer: yes X-Miltered: at concorde with ID 40C34025.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; lindows:01 caml-list:01 interfacing:01 2004:99 2004:99 eray:01 ozkural:01 kde:01 kde:01 frontc:01 selectable:99 recursion:01 obstacle:01 preprocessed:01 moc:99 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk This is a multi-part message in MIME format. --------------020009070809010304040300 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit skaller wrote: >On Sun, 2004-06-06 at 13:33, John Goerzen wrote: > > >>On Sun, Jun 06, 2004 at 03:31:04AM +0300, Eray Ozkural wrote: >> >> >>>Skaller, as a KDE developer I beg you. Please do it for Qt and KDE as well. >>> >>> >>The other nice thing is this: if we get Qt bindings, then OCaml >>suddenly becomes a viable language for developing embedded >>applications thanks to Qt/Embedded. That would be excellent. >> >> > >Well, there are two obstacles at the moment: > >(1) Flxcc can't parse C++ yet >(2) Flxcc can't target Ocaml yet > >Parsing C++ - templates is quite easy: >I've already made the mods to Frontc parser. >However, the parse tree is processed by Cil, >which does some complex transformations to regularise >the representation, and modifying that isn't so easy. >Cil handles the whole of C, whereas we actually only need >to process interfaces -- expressions could be useful >(default arguments, template arguments, and typeof) > >Generating Ocaml should be easy. However the program >will need to be factored to have a selectable backend. >It will need to do a bit more work than the Felix >backend however: Ocaml has separate compilation, >Felix doesn't. Ocaml can't do general recursion, >Felix has trouble doing anything else. > >But I have no doubt it can be done, even if the >result isn't perfect. > >What's needed is developers. >Wrapper generators need extensive testing by experts in >the wrapped libraries, and the code has to be lifted >out of Felix and put into a new project (and then >Felix will have to re-integrate it). > >I guess we need 4 developers to start off. >And a better name than 'flxcc' before registering >a new project :) > > > There's a third obstacle. Qt code is preprocessed by moc, which adds additional unparsable features to the already unparsable C++ syntax. -- This message contains information which may be confidential and privileged. Unless you are the addressee (or authorized to receive for the addressee), you may not use, copy or disclose to anyone the message or any information contained in the message. If you have received the message in error, please advise the sender and delete the message. Thank you. --------------020009070809010304040300 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit skaller wrote:
On Sun, 2004-06-06 at 13:33, John Goerzen wrote:
  
On Sun, Jun 06, 2004 at 03:31:04AM +0300, Eray Ozkural wrote:
    
Skaller, as a KDE developer I beg you. Please do it for Qt and KDE as well.
      
The other nice thing is this: if we get Qt bindings, then OCaml
suddenly becomes a viable language for developing embedded
applications thanks to Qt/Embedded.  That would be excellent.
    

Well, there are two obstacles at the moment:

(1) Flxcc can't parse C++ yet
(2) Flxcc can't target Ocaml yet

Parsing C++ - templates is quite easy:
I've already made the mods to Frontc parser.
However, the parse tree is processed by Cil,
which does some complex transformations to regularise
the representation, and modifying that isn't so easy.
Cil handles the whole of C, whereas we actually only need
to process interfaces -- expressions could be useful
(default arguments, template arguments, and typeof)

Generating Ocaml should be easy. However the program
will need to be factored to have a selectable backend.
It will need to do a bit more work than the Felix
backend however: Ocaml has separate compilation, 
Felix doesn't. Ocaml can't do general recursion,
Felix has trouble doing anything else.

But I have no doubt it can be done, even if the
result isn't perfect. 

What's needed is developers.
Wrapper generators need extensive testing by experts in 
the wrapped libraries, and the code has to be lifted
out of Felix and put into a new project (and then
Felix will have to re-integrate it).

I guess we need 4 developers to start off.
And a better name than 'flxcc' before registering
a new project :)

  

There's a third obstacle.  Qt code is preprocessed by moc, which adds additional unparsable features to the already unparsable C++ syntax.



--

This message contains information which may be confidential and privileged. Unless you are the 
addressee (or authorized to receive for the addressee), you may not use, copy or disclose to anyone 
the message or any information contained in the message. If you have received the message in error, 
please advise the sender and delete the message.  Thank you.

--------------020009070809010304040300-- ------------------- 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