1
数学的証明を形式的記述するための対象言語 (object language) に対して,証明戦略の記述用の言語であるメタ言語 (Meta Language) の頭文字をとった.
2
多くの場合,定 義する言語と定義される言語は異なるが,一致する場合もありうる,例えば Objective Caml で Objective Caml インタプリタを記述することも可能である. このような場合,そのインタプリタを特に,メタ・サーキュラ・イ ンタプリタ(meta circular interpreter)という.
3
ヘッダ部のopen宣言はトークン宣言部分では 有効ではないので,Syntax. をつけることが必要である.
4
この区別はコンパイラ の教科書で見られる左辺値(L-value),右辺値(R-value)と関 連する
5
Scheme や Objective Caml などでは,(構文的には)任意の式を再帰的定義の対象にできる.
6
値呼び出しには,もうひとつ,関数 呼び出しの実引数式は関数が呼び出される前に値に評価する,という意味も ある.
7
Exercise 23のような機能がある場合,もちろんこの限 りではない