计算FOLLOW()还是传播?

时间:2014-02-17 05:45:49

标签: parsing grammar lalr

对于LALR(1)解析器的前瞻计算,我有点困惑。

在“解析技术 - 实用指南”一书中,他们指出传播前瞻(+自发生成的前瞻)等同于计算变量的FOLLOW()。那么为什么LALR(1)解析器(根据龙书)完全使用传播/自发技术,如果它可以用FIRST()和FOLLOW()来完成,它们可以简单直接地计算?

如果不是这样,这两种技术有什么区别?

1 个答案:

答案 0 :(得分:0)

Design and Construction of Compilers发现了非常好的解释 简而言之,LALR(1)中的前瞻设置只是FOLLOW()的一个子集。它是通过传播技术计算的。