转变减少冲突
我无法理解 YACC 的移位/归约冲突问题。有人可以分解这个问题并使用 dangling-else 示例向我解释吗?
谢谢!
I am having trouble understanding the shift/reduce conflict problem with YACC. Could someone please break this problem down and explain it to me using the dangling-else example?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
悬挂的 else 问题基本上意味着类似的东西:
可以被解析为任一
或作为
大多数语言需要第一个 - 这正是 yacc 所做的,所以它很少是一个真正的问题(事实上,来自 yacc 的 S/R 冲突很少非常令人担忧)。
The dangling else problem basically means that something like:
can be parsed as either
or as
Most languages require the first -- and that's exactly what yacc does, so it's rarely a real issue (in fact, S/R conflicts from yacc are only rarely much of a concern).