第四章:SSA 深水区 - 分析闭包函数
题外话
虽然有一些语言对闭包的支持并不好,但是作为 “通用静态” 编译技术,闭包函数是无论如何都绕不过去的一个话题。在更贴近用户的高级编程语言中,闭包和使用和深入了解在编程中的意义巨大(虽然它本身对编译器来说非常不友好,会极大增加编译器的设计复杂度)
我们强烈建议读者在了解完之前的所有内容,再开始阅读这一章节。本章节涉及到的一系列复杂的概念需要用户本身对编译器有一定了解。
我们在前面的内容中,讨论了各种语言的高级特性的 SSA 编译手段,并且给出了很多形式化表达,但是这些内容基本停留在基础的 SSA 层面。
在接下来的内容中,我们将讨论一些更深层次的 SSA 内容,包括我们怎么对待闭包函数,我们怎么对待 OOP 并且怎么找到 OOP 相关概念与 Classless 概念的联系。
这两大话题是 SSA 中非常具有实践意义的话题。