Application: ANTLR

David Jones dej at
Fri Mar 22 10:49:46 PST 2002

The application I am interested in is ANTLR, post-2.0.  Jim asked me
to post this.

ANTLR is a recursive-descent parser generator - you specify a grammar,
typically for a programming language, in a concise form, and ANTLR
will generate C++ or Java code for the parser.

What sets ANTLR apart from other parser generators supporting C++ as a target
is syntactic and semantic predicates.  Using these, it is possible to
implement grammars that could not otherwise be easily implemented
in any other parser generator.  (Example: VHDL.  It's possible, but
very painful, using an LALR(1) generator such as yacc.  Trivial in ANTLR.)

ANTLR started off as PCCTS, a package originally coded in C++.  With version
2.0, Terence Parr did a complete rewrite, and chose Java as the implementation
language.  Although ANTLR can generate C++ code, you still require a
Java 1.0+ implementation in order to run the generator itself.

More information:

More information about the kaffe mailing list