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.
翻译:描述Marpa 识别器。 Marpa 是一种实用的、完全应用的算法,用于确认、分析和评价无背景语法。Marpa 识别器是第一个将Joop Leo 1991年论文中Earley算法的改进与Aycock 和 Horspool 2002 年论文中的改进结合起来。 Marpa 正在以方便应用的方式跟踪分析的整个状态。这极大地改进了错误的探测,并使得事件驱动的解析成为可能。其中一种技术是“Ruby Slippers ” 的解析,根据分析者的期望改变了输入。