Is your feature request related to a problem? Please describe.
I experimented with adding an LL(1) parser to the project, and for a large input DNA sentence (ACGT x 10000), the LL(1) parser out performed Earley by 10,000x
this is the ideal case for an LL(1) parser, but it got me wondering how the crate could better support more restricted grammars
Describe the solution you'd like
my naive initial hope that the parser API could offer variants:
- choose the explicit parser the grammar requires (caller knows best)
- dynamic unambiguous which handles arbitrary token lookahead requirements (at greater cost)
- dynamic ambiguous (current Earley parsing) which handles ambiguity (at greatest cost)
Is your feature request related to a problem? Please describe.
I experimented with adding an LL(1) parser to the project, and for a large input DNA sentence (ACGT x 10000), the LL(1) parser out performed Earley by 10,000x
this is the ideal case for an LL(1) parser, but it got me wondering how the crate could better support more restricted grammars
Describe the solution you'd like
my naive initial hope that the parser API could offer variants: