发现模糊的BNF语法

4
我有一个任务需要纠正一份含糊不清的BNF,但我完全迷失了。我知道这不是一个真正的编程问题,如果这不是这些论坛上适当的问题,我会很乐意删除它。有没有好的网站可以让我学习更多关于BNF的知识?我所处理的那个似乎相当简单,但我找不到任何关于BNF的例子或好的解释。我曾经有过一些发现模糊的语法树和其他类型的语法的经验,但在这个问题上我完全迷失了。
由于这是一个学校作业,我不确定是否应该发布相关的BNF,但如果有人知道一个好的网站,我可以查看以获得更好的理解如何攻击我的问题。我真的不知道从哪里开始。
2个回答

1

谢谢!我会查看那些页面。另外,您能否解释一下BNF中的文字字面值是如何工作的?它们似乎并没有真正起到什么作用。 - PFranchise
我不确定我理解了。BNF只包含终端和非终端符号。我认为在语法中放置字符串文字之类的东西只是因为没有人非常准确地定义什么构成符号的后果。如果这就是你所说的事情,那么它们的工作方式大多是不起作用的。它们往往非常脆弱。 - Gian

0
如果在一个句子的右侧有两个或更多相同的非终结符,那么它是不明确的。例如: -> + | 。右侧的expr可以以不同的方式在树中展开,因此可以绘制不同的树,这是不明确的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接