From: Jean-Christophe Filliatre <Jean-Christophe.Filliatre@lri.fr>
To: Daniel.Andor@physics.org
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] camlp4 vs. ocamllex/yacc?
Date: Fri, 24 Jan 2003 16:12:10 +0100 [thread overview]
Message-ID: <15921.22474.602526.543452@lri.lri.fr> (raw)
In-Reply-To: <200301241415.44042.da209@cam.ac.uk>
> What are the advantages/disadvantages of using camlp4 vs. a combination of
> ocamllex and ocamlyacc?
For having used both of them intensively, I see (at least) the
following advantages of camlp4:
- it comes with a lexer, saving you the burden of writing one
(this lexer conforms to ocaml lexical conventions; for prototype
implementations, it is usually fine)
- it offers high level grammar constructors such as LIST0, LIST1,
OPT, ... It results in cleaner and more concise grammars.
Another advantage of camlp4, not of common use, is to propose an ocaml
datatype for grammars: thus grammars can be extended dynamically. This
is not possible with ocamlyacc grammars.
The (sole?) advantage of ocamlyacc is when you already have a YACC
grammar. Turning it into an ocamlyacc grammar is almost immediate.
> Is there already a translator like this out there (to save me the effort)?
There are probably many (Ocaml is, in particular, a good tool to write
compilers) but this really depends on your input syntax (there are
really *many* ways to write mathematics using ASCII :-).
--
Jean-Christophe
-------------------
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
next prev parent reply other threads:[~2003-01-24 15:23 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-01-24 14:15 Daniel Andor
2003-01-24 14:32 ` Jacques Carette
2003-01-24 15:12 ` Jean-Christophe Filliatre [this message]
2003-01-24 16:21 ` Alain.Frisch
2003-01-26 2:50 ` Ed L Cashin
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=15921.22474.602526.543452@lri.lri.fr \
--to=jean-christophe.filliatre@lri.fr \
--cc=Daniel.Andor@physics.org \
--cc=caml-list@inria.fr \
/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