最近(又)开始挖坑想造语言,于是翻出了SPJ爷的The Implementation of Functional Programming Languages
。
要说这书1987年就出版了,比我岁数还大orz。书从lambda calculus讲起,到High level language的compile,
最后说到Graph Reduction以及G-Machine,完整的讲述了如何在冯诺伊曼架构下实现函数式语言。
书分三个部分,Compiling High Level Language,Graph Reduction和Advanced Graph Reduction(喂。
笔记也会按照章节来写,补充一些细节啥的(大概。
Part I: Compiling High Level Languages
Chapter 1: Introduction
Chapter 2: The Lambda Calculus
Chapter 3: Translating A High-Level Functional Language Into The Lambda Calculus
Chapter 4: Structured Types And The Semantics OP Pattern-Matching
Chapter 5: Efficient Compilation of Pattern-Matching
Chapter 6: Transforming The Enriched Lambda Calculus
Chapter 7: List Comprehension
Chapter 8: Polymorphiic Type-Checking
Chapter 9: A Type Checker