The LL(finite) parsing strategy for parsing of LL(k) grammars where k needs not to be known is presented. The strategy parses input in linear time, uses arbitrary but always minimal lookahead necessary to disambiguate between alternatives of nonterminals, and it is optimal in the number of lookahead terminal scans performed. Modifications to the algorithm are shown that allow for resolution of grammar ambiguities by precedence -- effectively interpreting the input as a parsing expression grammar -- as well as for the use of predicates, and a proof of concept, the open-source parser generator Astir, employs the LL(finite) strategy in the output it generates.


翻译:LL( finite) 解析 LL( k) 语法战略, 此处的 k 需要不为人知。 策略用线性时间分割输入, 使用任意但总是最小的外观来分辨非终点值的替代品, 并且对外头终端扫描次数进行优化。 对算法的修改显示, 允许以优先排序来解析语法模糊性 -- 有效地将输入解释成一种解析语法表达法 -- 以及使用上游值和概念证明, 开源解析器生成者Astir在其生成的产出中使用了LL( fite) 战略 。

0
下载
关闭预览

相关内容

专知会员服务
51+阅读 · 2020年12月14日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
79+阅读 · 2020年7月26日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
154+阅读 · 2019年10月12日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
计算机视觉的不同任务
专知
5+阅读 · 2018年8月27日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
最佳实践:深度学习用于自然语言处理(三)
待字闺中
3+阅读 · 2017年8月20日
VIP会员
相关资讯
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
17+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
计算机视觉的不同任务
专知
5+阅读 · 2018年8月27日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
最佳实践:深度学习用于自然语言处理(三)
待字闺中
3+阅读 · 2017年8月20日
Top
微信扫码咨询专知VIP会员