我有以下语法,我被告知是LR(1)而不是SLR(1):

我不明白为什么会这样。您将如何证明这一点?

最佳答案

我没有足够的声誉来评论上面的答案,这个问题我来晚了,但是...

我已经在其他地方看到了这种语法作为示例,并且OP实际上做了错别字。它应该是:

S ::= a | b a c | d c | b d一

::= d

S 的第一个子句是' A a',而不是'a A '。

在这种情况下,为A设置的跟随是{$,a,c},并且状态8中存在SLR冲突。

关于parsing - 语法LR(1)而不是SLR(1)怎么样?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10505717/

10-09 15:53