PEGLL: PEG + GLL
This paper presents an extension of the GLL parsing algorithm for context-free grammars which also supports PEG with ordered choice and lookahead. The new PEGLL algorithm retains support for unordered choice, and thus parses a common superset of context-free grammars and parsing expression grammars. As part of this work, the authors have modified an existing GLL parser-generator to support parsing expression grammars, adding operators for common parsing expressions and modifying the lexer algorithm to better support ordered choice.
Implementations
- pegll ↗ (Go, Rust)
- instaparse ↗ (Clojure)