> The mention of rockit from above was good too, it looks pretty
> compelling.  Here's the project:
>   http://rockit.sourceforge.net/
> It looks pretty interesting.  However rockit, racc, and rbison seem to
> be somewhat involved for writing parsers.  I'm thinking of something
> much simpler perhaps.  These work great for very common syntaxes where
> you have a very large number of documents.  I'm thinking more along the
> lines of a flexible library for quickly defining many syntaxes with a
> limited set of documents.
>
> Then again, I might just need to play with these parsers a bit and see.
>   .adam sanderson


Adam,

I've actually worked a bunch with Racc fairly recently.  I'm don't have
the time (or expertise) to write up any tutorials any time soon, but I can
give you a brief description of my experience.

I started out by making incorrect assumptions.  Racc does a great job of
generating a parser.  The problem (that I misunderstood) is that at its
heart, Racc is a parser-generator and not much more.  Racc generates a
parser that will accept or reject a sentence according to the grammar that
it is generated from.  Where you go from there is up to you.

I used Racc to generate an Ada parser (without too much trouble).  Though
I haven't put too much time into it, I've found the hard part to be
generating an Abstract Syntax Tree that worked for me.  It's the AST that
will allow me to manipulate the stuff that I parsed.

Oh geez, I almost forgot.  I got started using the Parser Generators
chapter from the Ruby Developer's Guide from Syngress.  I think the
chapter may have been written by Robert Feldt (Mr. Rockit, or at least the
one that isnt't Herbie Hancock) and I enjoyed it.  There's rockit sutff in
there too.

Good luck to you, and if you have any specific questions or problems feel
free to contact me personally.

mattD