Rats! is a parser generator for C-like languages (though currently it only generates parsers in Java). It has been designed so that grammars are concise and easily extensible. To this end, grammars are organized into modules that can be easily changed by adding, removing, or modifying alternatives in individual productions and composed with each other through module parameters. Furthermore, it relies on ordered choices to avoid ambiguities, supports syntactic predicates for unlimited lookahead, and integrates lexing with parsing. Finally, it has extensive support for automatically generating abstract syntax trees, thus greatly reducing the need for explicit semantic actions.
Changes
This release includes significant new features and bugfixes. Highlights of new features are more flexibility in declaring ASTs within grammars through '@NodeName' markers, improved error checking and grammar analysis facilities, and support for concrete syntax, i.e. the ability to specify source code templates instead of programmatically building up AST fragments.
URL: Rats!