实现
学习一门语言就尝试写他的实现,本计划尝试从零实现各种语言特性。
编译器,解释器,即时编译(JIT)
parser、连接器、汇编器、
parser:Parser Combinators
范式
命令式
面向对象
函数式
风格
CPS
monad
point free
currying
特性feature
repl
gc
JIT
指针
管道
作用域(变量)
流程控制
goto
continuation(CPST
类型系统
动态类型
静态类型
lambda
macro(Hygienic macro)
函数调用
传名调用
传值调用
引用调用
地址调用
closure(closure conversion,closure优化
Lambda lifting
尾递归优化(tail-call optimization)
scheme专用
read宏
match宏
可能的缺陷
词法问题:程序被词法分析器分解成符号过程中可能出现的错误
语法结构可能出现的偏差
语义与初衷出现偏差
可移植性问题
reference
build your own lisp
C陷阱与缺陷