Package to write parsers for arbitrary grammars (DSLs, etc) entirely in Java, with no preprocessing phase