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 KAA02957; Wed, 28 Jul 2004 10:03:47 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 KAA03631 for ; Wed, 28 Jul 2004 10:03:46 +0200 (MET DST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.12.10/8.12.10) with ESMTP id i6S83jEV005327; Wed, 28 Jul 2004 10:03:45 +0200 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id KAA01930; Wed, 28 Jul 2004 10:03:45 +0200 (MET DST) From: Pierre Weis Message-Id: <200407280803.KAA01930@pauillac.inria.fr> Subject: Re: [Caml-list] Camlp4 help/questions In-Reply-To: <20040727214504.GA7950@trdlnk.com> from Josh Smith at "Jul 27, 104 04:45:04 pm" To: josh@trdlnk.com (Josh Smith) Date: Wed, 28 Jul 2004 10:03:45 +0200 (MET DST) Cc: caml-list@inria.fr X-Mailer: ELM [version 2.4ME+ PL28 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 41075DE1.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Loop: caml-list@inria.fr X-Spam: no; 0.00; pierre:01 weis:01 pierre:01 weis:01 caml-list:01 camlp:01 camlp:01 regex:01 largish:01 descent:01 scanf:01 cristal:01 million:98 ocaml:01 ocaml:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk > I apologize if this is not the right list to send this too, but I'm > nearing my feeble wits' end and I'm starting here... > > I have a project that is currently using c++ that I would like to convert to > Ocaml (parts of it are already in Ocaml and I'd like to simplify my > codebase). However, I am using the Spirit library from Boost to do parsing > in c++ and I cannot figure out Camlp4 to convert it. If there is anyone who > knows both Spirit and Camlp4 who can help me I was appreciate it a lot. > > Maybe I am an idiot, but I've been through the tutorial and it didn't help > me very much. I've been looking for example code for simple parsers and I've > found many, many calculators but little else. I've even tried to go back to > ocamlyacc/ocamllex but the yacc/lex syntax bothers me. > > I can even give you an example of what I'm trying to parse and then use the > resulting data structure (I could do regex, but these are from largish data > files and the robostness provided by a parser is what I need). > > a23fassssadfj4532|10,2;13,3;20;20|10|20|30|B > aassafjeifdfj4532|11,21;13,33|1|2|3|T > ... and so on for about a million lines or so > > the unasked question here is "Is this the right way to go?" I mean, is > Camlp4 the tool I should be using? I think it is, because the top down, > recursive descent parsing is what Spirit does, but maybe I've just confused > things. > > Any help is appreciated. Thank you all. > > -jbs If you need not parsing more complex things, you may also try the Scanf module which is far more powerful than the C equivalent and sounds the more appropriate for such kind of job. I would be glad to help if you choose that way. Best regards, Pierre Weis INRIA, Projet Cristal, Pierre.Weis@inria.fr, http://pauillac.inria.fr/~weis/ ------------------- 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