SECDマシン
SECDはラムダ計算を実行できる抽象機械
スタックマシン
いろいろな実装は「SECDマシンなLisp実装」のページを見る
LispKit Lisp
SECDマシン
SECD は下記の略
Stack(スタック)レジスタ
Environment(環境)レジスタ
Code(コード)レジスタ
変数の値を保持する環境を表すリストを指している。
Dump(ダンプ)レジスタ
現在のS、E、Cレジスタの値を一時退避させておくリスト
Freeレジスタというのもいるっぽい
Freeレジスタ
未使用のメモリセルの位置
命令セット
STOP, NIL, LDC, LD, CAR, CDR, ATOM, CONS, EQ, LEQ
ADD, SUB, MUL, DIV, REM
SEL, JOIN, LDF, AP, RTN, DUM, RAP
『The Architecture of Symbolic Computers』
参考
SECD machine - Wikipedia
SECDマシン - Wikipedia
SECDマシンとLispあれこれ - Arantium Maestum
Lispを実装したくなったら読んでほしい本6選 - Arantium Maestum
Functional Programming Application and Implementation
LispKit Lisp処理系の実装 序 - Arantium Maestum
関連
逆ポーランド記法
rib cage representation
『コンパイラ―原理と構造―』