In this paper, we recall the definition of the context-free expressions (or μ-regular expressions), an algebraic presentation of the context-free languages. Then, we define a core type system for the context-free expressions which gives a compositional criterion for identifying those context-free expressions which can be parsed unambiguously by predictive algorithms in the style of recursive descent or LL(1).
Next, we show how these typed grammar expressions can be used to derive a parser combinator library which both guarantees linear-time parsing with no backtracking and single-token lookahead, and which respects the natural denotational semantics of context-free expressions. Finally, we show how to exploit the type information to write a staged version of this library, which produces dramatic increases in performance, even outperforming code generated by the standard parser generator tool ocamlyacc.
Mon 24 Jun
|16:00 - 16:20|
|DOI Pre-print Media Attached|
|16:20 - 16:40|
Neel KrishnaswamiComputer Laboratory, University of Cambridge, Jeremy YallopUniversity of Cambridge, UKLink to publication DOI Pre-print
|16:40 - 17:00|
Giovanni CampagnaStanford University, USA, Silei Xu, Mehrad MoradshahiStanford University, USA, Richard SocherSalesforce, USA, Monica S. LamStanford University, USAMedia Attached