Marpa, A practical general parser: the recognizer
Jeffrey Kegler

TL;DR
Marpa is a practical, fully implemented parser that unites improvements to Earley's algorithm, enabling efficient, error-aware, event-driven parsing of context-free grammars with applications like input modification.
Contribution
It introduces Marpa, the first parser combining enhancements from two key Earley algorithm improvements, supporting advanced features like error detection and input modification.
Findings
First to unify Earley's algorithm improvements in a practical parser
Supports error detection and event-driven parsing techniques
Enables input alteration based on parser expectations
Abstract
The Marpa recognizer is described. Marpa is a practical and fully implemented algorithm for the recognition, parsing and evaluation of context-free grammars. The Marpa recognizer is the first to unite the improvements to Earley's algorithm found in Joop Leo's 1991 paper to those in Aycock and Horspool's 2002 paper. Marpa tracks the full state of the parse, at it proceeds, in a form convenient for the application. This greatly improves error detection and enables event-driven parsing. One such technique is "Ruby Slippers" parsing, in which the input is altered in response to the parser's expectations.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNatural Language Processing Techniques
