Data and Documentation
Open Data Policy
FAQ
EN
DE
FR
Suchbegriff
Advanced search
Publication
Back to overview
Optimizing Parser Combinators
Type of publication
Peer-reviewed
Publikationsform
Proceedings (peer-reviewed)
Author
Kurš Jan, Vraný Jan, Ghafari Mohammad, Lungu Mircea, Nierstrasz Oscar,
Project
Agile Software Analysis
Show all
Proceedings (peer-reviewed)
ISBN
978-1-4503-4524-8
Title of proceedings
Proceedings of International Workshop on Smalltalk Technologies (IWST 2016)
DOI
10.1145/2991041.2991042
Open Access
URL
http://scg.unibe.ch/archive/papers/Kurs16a-Compiler.pdf
Type of Open Access
Website
Abstract
Parser combinators are a popular approach to parsing. Parser combinators follow the structure of an underlying grammar, are modular, well-structured, easy to maintain, and can recognize a large variety of languages including context-sensitive ones. However, their universality and flexibility introduces a noticeable performance overhead. Time-wise, parser combinators cannot compete with parsers generated by well-performing parser generators or optimized hand-written code. Techniques exist to achieve a linear asymptotic performance of parser combinators, yet there is still a significant constant multiplier. This can be further lowered using meta-programming techniques. In this work we present a more traditional approach to optimization --- a compiler --- applied to the domain of parser combinators. A parser combinator compiler (pc-compiler) analyzes a parser combinator, applies parser combinator-specific optimizations and, generates an equivalent high-performance top-down parser. Such a compiler preserves the advantages of parser combinators while complementing them with better performance.
-