gpt4 book ai didi

parsing - pratt解析器是一种什么样的解析器?

转载 作者:行者123 更新时间:2023-12-04 00:42:31 25 4
gpt4 key购买 nike

我正在实现 pratt 的 top down operator precedence解析器,我想知道它属于哪个正式类别 - 是 LR(1) 吗?

最佳答案

Pratt 解析器不是 LR 解析器。而且它们也不完全是 LL 解析器。事实上,Pratt 解析器通常是用一些通用编程语言手工编码的;该技术不是基于像下推有限状态自动机这样的抽象。这使得证明关于给定 Pratt 解析器的断言变得更加困难,例如它识别特定的形式语言。

一般来说,如果语法是运算符优先语法,Pratt 解析器可以很容易地设计为识别语言,因此它们可以被认为是运算符优先语法分析的对偶,即使运算符优先语法分析是自下而上的,Pratt解析器名义上是自上而下的。跟踪同一语言的 Pratt 解析器和运算符优先级解析器的转换将显示相似性。

所以我认为有可能为 Pratt 解析器提出一种形式主义,但据我所知,不存在这种形式主义。

关于parsing - pratt解析器是一种什么样的解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17381930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com