MixedCC - Mixed Compiler Compiler - Parser generator capable of parsing and handling inner layer stacks of multi-layer templates. Open source in Java. Parsing mechanism works as Detachable-Layer Stack Machine. SPIndent is implementation of MixedCC for JSP/PHP/ASP. - http://spindent.paneris.net
BNF for Java - BNF compiler-compiler is designed to conform to ISO-14977. It is implemented in Java, for Java programmers. [Open source, GPL] - http://bnf-for-java.sourceforge.net/
Beaver - A LALR(1) parser generator. Uses very fast (based on perfect hashing) parsing engine. [Open source, LGPL] - http://beaver.sourceforge.net
JavaCC - The Java Compiler Compiler is a parser generator originally by Sun Microsystems. [Freeware] - http://www.experimentalstuff.com/Technologies/JavaCC
Coco/R for Java - Takes as input a compiler description in the form of an LL(1) attributed grammar and generates a scanner and parser. [Freeware] - http://www.ssw.uni-linz.ac.at/Research/Projects/Coco/
JELLRAP - The Java Enhanced LL LR Animated Parser is a graphical tool to parse strings using a variety of algorithms; LLParse and LRParse combined into a single tool that will run on multiple platforms. [Open Source] - http://www.cs.duke.edu/~rodger/tools/jellrap/
Modern Compiler Implementation in Java - JLex and CUP, Andrew Appel's Lex and YACC equivalents. LALR parser generators. The tools are free, the book their use is described in can be ordered here. [Freeware] - http://www.cs.princeton.edu/~appel/modern/java/
JFlex - Lexical analyzer generator (also known as scanner generator) for Java, written in Java. A rewrite of JLex with more features. [Open Source, GPL] - http://www.jflex.de/
SableCC - Object-oriented framework, written in Java, that generates compilers (and source-interpreters) for Java. [Open Source, LGPL] - http://www.sablecc.org/
Constructor of Useful Parsers (CUP) - Generates LALR parsers from simple specifications. [Open Source] - http://www.cs.princeton.edu/~appel/modern/java/CUP/