编译器

主要观点:“Compilers”是一门实践课程,目标是构建能将高级语言编译为实际 x86 - 64 机器码并在学生笔记本上运行的编译器,源语言是 Tiger,编译器用 OCaml 开发。课程另一个目标是体验现代软件开发,如测试驱动开发、版本控制等。
关键信息:课程采用迭代、增量开发方式,从最基础源语言开始,逐步扩展,每次都构建完整可运行可测试的编译器;广泛使用无标签终结风格,利用其可扩展性进行复用而非复制粘贴,编译器结构为特定领域语言栈;注重名称和属性关联,类似代数效应;涵盖编译器课程所有标准材料但方式非传统;2022 - 2023 年秋季/冬季作为 15 讲选修本科课程开设,提供了课程笔记、介绍无标签终结风格的代码、简化版课程及 x86 - 64 模拟器等相关资料。
重要细节:源语言类似 Pascal 或带任意嵌套函数的 C;迭代开发中每次为源语言子集构建编译器;无标签终结风格可复用类型检查和编译后的成果;注重名称和属性关联的方法;课程资料包括课程笔记 PDF、介绍无标签终结风格的代码、简化版课程链接及 x86 - 64 模拟器代码等。

阅读 7
0 条评论