【发布时间】:2014-10-03 07:06:01
【问题描述】:
我有一个删除了左递归的语法,它也被左分解了。
我已经创建了 FIRST 集,这是非常简单的任务,但是构建 FOLLOW 集是有问题的。我试图找到有用的例子,但没有找到任何对我有帮助的例子。
语法如下:
St 是开始符号。
St -> St'
St' -> i S'
E -> i E'
E' -> [ E ] E'
E' -> ε
S' -> = E
S' -> [ E ] = E
而对应的FIRST集合是
E = { i }
E' = { [, ε }
S' = { [, = }
St = { i }
St' = { i }
现在,来自http://www.jambe.co.nz/UNI/FirstAndFollowSets.html 的跟随集的构建规则非常简单,但我不知道如何正确应用它们。
到目前为止我已经构建的以下集合是:
E = {}
E' = {}
S' = {}
St = {$}
St' {$}
但在此之后我不知道如何进行。一些提示将是最受欢迎的,我不希望得到这个问题的完整解决方案,只是一些提示,以便我了解构建跟随集的工作原理。
【问题讨论】:
标签: compiler-construction set grammar