编译器如何使用晶格

Kel*_*nch 9 compiler-construction math

在我的编译器构建研究生班上,我们已经介绍了格子的概念.三个讲座专门用于格子,到目前为止,它似乎是一个有趣的切线,但困境在于它并没有真正帮助解释编译器如何使用格子来解决具体问题.

我们已经介绍了解析和类型检查.我们即将开始活体分析和注册分配.

注意,我不是在寻找构建编译器的资源.以下链接列表很好地涵盖了.我正在寻找的是关于编译器和格子之间的关系的解释,大多数例子的奖励点.

在解析器,解释器和编译器上学习资源
我们应该知道多少编译器?
学习编写一个编译器

Jør*_*ode 5

格子是一种非常有用的结构,用于表示状态,同时对正在编译的程序进行静态分析 - 例如.用于删除活体分析检测到的死代码,可用/非常繁忙的表达式,达到定义,符号分析和不断传播.

如果您需要详细信息,请阅读以下内容:静态分析讲义