Awesome
Autumn: Extensible Parsing Combinators
DISCLAIMER
This repository was put up for historical records, only.
There is a newer and better version of Autumn, available at https://github.com/norswap/autumn
Documentation
Dig around the Autumn class for documented entry points into the parser. There's also a good example that uses the bundled Java grammar.
For the internals, the ParseState class class has a long explanation of the concepts underlying parse state handling. For writing custom parsing expressions, look at the ParsingExpression class.
Building
make fetchpom
rm -rf deps/jar
mv deps/fetched/jar deps/jar
make build
... will output the class files under the out/dev
directory.
Running Tests
make run t=MAIN_CLASS
e.g.,
make run t=com.norswap.autumn.test.languages.JavaTest
make run t=com.norswap.autumn.test.languages.PythonTest
Note that running these will require to download some source code for the test to run over and to edit the test classes to set the proper path to the sources.