CoffeeGrinder, Earley and GLL parsers in Java
CoffeeGrinder implements both Earley and GLL parsers. Both are capable of using ambiguous grammars. CoffeeGrinder parses (grinds?) a sequence of tokens and returns a Shared Packed Parse Forest. Individual parse trees can be obtained from the forest.
This parser is a fairly literal implementation of the parser in §5 of SPPF-Style Parsing From Earley Recognisers. It has been extended slightly to return a little more information in the SPPF and to support parses that match only a prefix of the input sequence.
References
Package | Description |
---|---|
org.nineml.coffeegrinder.exceptions |
CoffeeGrinder exceptions.
|
org.nineml.coffeegrinder.gll |
The GLL parser classes.
|
org.nineml.coffeegrinder.parser |
The parser classes.
|
org.nineml.coffeegrinder.tokens |
The token classes.
|
org.nineml.coffeegrinder.trees |
The tree classes.
|
org.nineml.coffeegrinder.util |
Utility classes.
|
org.nineml.logging |
Logging framework.
|