要为所有非终端A计算FOLLOW(A),请应用以下规则 直到没有任何东西可以添加到任何FOLLOW集。
将$放在FOLLOW(S)中,其中S是起始符号,$是输入 右端标记。
如果有产品A - > B,然后FIRST(b)中的所有内容除了epsilon 在FOLLOW(B)。
如果有产品A - > aBb,或生产A - > aBb,在哪里 FIRST(b)包含t,然后FOLLOW(A)中的所有内容都在FOLLOW(B)中。 a,b实际上是alpha和beta(句子形式)。这是来自龙书。
现在我的问题是在这种情况下,我们可以采取一个= epsilon? 并且b(beta)可以是像XY这样的2个非终端吗? (如果是绝对的那么它就会......)
答案 0 :(得分:1)
以下是龙书实际上所说的内容:[见注1]
本书前面有一个关于“符号约定”的部分,其中明确指出一个小写的希腊字母,如α或β代表可能的空字符串的语法符号。所以,是的,α可以为空,β可以是两个非终结符(或任何其他语法符号串)。