Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
Computer Languages
Software—Practice & Experience
Parsing techniques: a practical guide
Parsing techniques: a practical guide
A recursive ascent Earley parser
Information Processing Letters
Recursive ascent parsing: from Earley to Marcus
Theoretical Computer Science
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Very fast YACC-compatible parsers (for very little effort)
Software—Practice & Experience
An efficient context-free parsing algorithm
Communications of the ACM
Communications of the ACM
The Functional Treatment of Parsing
The Functional Treatment of Parsing
The Java Language Specification
The Java Language Specification
Deterministic Techniques for Efficient Non-Deterministic Parsers
Proceedings of the 2nd Colloquium on Automata, Languages and Programming
Construction of Efficient Generalized LR Parsers
WIA '97 Revised Papers from the Second International Workshop on Implementing Automata
Optimizing Directly Executable LR Parsers
CC '90 Proceedings of the Third International Workshop on Compiler Construction
CC '96 Proceedings of the 6th International Conference on Compiler Construction
Current Parsing Techniques in Software Renovation Considered Harmful
IWPC '98 Proceedings of the 6th International Workshop on Program Comprehension
An efficient context-free parsing algorithm
An efficient context-free parsing algorithm
The structure of shared forests in ambiguous parsing
ACL '89 Proceedings of the 27th annual meeting on Association for Computational Linguistics
Authoring Verified Documents by Interactive Proof Construction and Verification in Text-Editors
Proceedings of the 9th AISC international conference, the 15th Calculemas symposium, and the 7th international MKM conference on Intelligent Computer Mathematics
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
Hi-index | 0.00 |
Deterministic parsing techniques are typically used in favor of general parsing algorithms for efficiency reasons. However, general algorithms such as Earley's method are more powerful and also easier for developers to use, because no seemingly arbitrary restrictions are placed on the grammar. We describe how to narrow the performance gap between general and deterministic parsers, constructing a directly-executable Earley parser that can reach speeds comparable to deterministic methods even on grammars for commonly-used programming languages.