Java Compiler Compiler [tm] (JavaCC [tm]) is the most popular parser
generator for use with Java [tm] applications. A parser generator is
a tool that reads a grammar specification and converts it to a Java
program that can recognize matches to the grammar. In addition to the
parser generator itself, JavaCC provides other standard capabilities
related to parser generation such as tree building (via a tool called
JJTree included with JavaCC), actions, debugging, etc.