Beaver
A LALR(1) parser generator. Uses very fast (based on perfect hashing) parsing engine. [Open source, LGPL]
BNF for Java
BNF compiler-compiler is designed to conform to ISO-14977. It is implemented in Java, for Java programmers. [Open source, GPL]
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]
Constructor of Useful Parsers (CUP)
Generates LALR parsers from simple specifications. [Open Source]
JavaCC
The Java Compiler Compiler is a parser generator originally by Sun Microsystems. [Freeware]
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]
JFlex
Lexical analyzer generator (also known as scanner generator) for Java, written in Java. A rewrite of JLex with more features. [Open Source, GPL]
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.
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]
SableCC
Object-oriented framework, written in Java, that generates compilers (and source-interpreters) for Java. [Open Source, LGPL]