个人简介
Andrew W.Appel,普林斯顿大学计算机科学系教授,从事关于编译器、函数式编程语言、运行时间系统和无用信息收集、类型系统、计算机安全等方面的研究,并发表了多篇相关的论文;他还是“Compiling with Continuayions”一书的作者,以及New Jersey项目ML标准的奠基者和设计者。由于“在编程语言和编译器领域的重大研究贡献”,以及他为ACM会刊“ACM Transactions on Programming Languages and Systems”所做的工作,1998年,Appel被选为ACM的会士。
陈明,石油大学(北京)计算机科学与技术系系主任、教授、博士生导师,南开大学、保肥工业大学等院校兼职教授。
内容简介
本书是一本编译技术的教程,其特点是注重实现。从学习编译器的结构来掌握理论,并通过编程技术将编译理论融合于实践中。本书主要内容分为两部分,第一部分为编译基础(第1章至第12章),主要包括:词法分析、语法分析、抽象语法、语义分析、活动记录、翻译成中间代码、基本块和轨迹、指令选择、活性分析、寄存器分配、 使之成为整体。第二部分为高级课题(第13章至第21章),主要包括:无用信息收集、面向对象语言、函数式编程语言、多态类型、数据流分析、循环优化、静态单赋值表、流水线和调度、分级存储器体系等。
本书可作为高等院校编译技术课程的教材、教师参考书以及编译技术研究人员的参考资料。