flap: A Deterministic Parser with Fused Lexing

Author:

Yallop Jeremy1ORCID,Xie Ningning2ORCID,Krishnaswami Neel1ORCID

Affiliation:

1. University of Cambridge, UK

2. University of Toronto, Canada

Abstract

Lexers and parsers are typically defined separately and connected by a token stream. This separate definition is important for modularity and reduces the potential for parsing ambiguity. However, materializing tokens as data structures and case-switching on tokens comes with a cost.We show how tofuseseparately-defined lexers and parsers, drastically improving performance without compromising modularity or increasing ambiguity. We propose a deterministic variant of Greibach Normal Form that ensures deterministic parsing with a single token of lookahead and makes fusion strikingly simple, and prove that normalizing context free expressions into the deterministic normal form is semantics-preserving. Our staged parser combinator library, flap, provides a standard interface, but generates specialized token-free code that runs two to six times faster than ocamlyacc on a range of benchmarks.

Funder

European Research Council

Isaac Newton Trust

Publisher

Association for Computing Machinery (ACM)

Subject

Safety, Risk, Reliability and Quality,Software

Reference35 articles.

1. Alfred V Aho Ravi Sethi and Jeffrey D Ullman. 2007. Compilers: principles techniques and tools. 2 Addison-wesley Reading. Alfred V Aho Ravi Sethi and Jeffrey D Ullman. 2007. Compilers: principles techniques and tools. 2 Addison-wesley Reading.

2. Greibach Normal Form Transformation Revisited

3. Anne Brüggemann-Klein and Derick Wood . 1992. Deterministic regular languages . In STACS 92 , Alain Finkel and Matthias Jantzen (Eds.). Springer Berlin Heidelberg , Berlin, Heidelberg . 173–184. isbn:978-3-540-46775-5 Anne Brüggemann-Klein and Derick Wood. 1992. Deterministic regular languages. In STACS 92, Alain Finkel and Matthias Jantzen (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 173–184. isbn:978-3-540-46775-5

4. Derivatives of Regular Expressions

5. Chris Casinghino and Cody Roux. 2020. ParTS: Final Report. HR001120C0016 - Final Report. Chris Casinghino and Cody Roux. 2020. ParTS: Final Report. HR001120C0016 - Final Report.

Cited by 1 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. flap: A Deterministic Parser with Fused Lexing;Proceedings of the ACM on Programming Languages;2023-06-06

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3