昨日のエントリにのせた動的スコープLispについていくつか補足を貰ったのでそれについてフォローしておく。 動的スコープの実装はdeep bindingとshallow bindingの2種類にわけられる(らしい)。 http://www.fan.gr.jp/~ring/doc/elisp_19/elisp-jp_12.html#SEC138 GNU Emacs - 10.8.3 動的スコープの実装 その二つについてとりあえず理解している範疇でまとめてみる。多分それぞれを疑似コードであらわすとこんな感じになる。 (すごく見にくくて申し訳ない限り。) Deep Binding deep bindingでは変数は大域に存在する一本のstack(ここでは*the-stack*)を軸として変数の束縛がおこなわれる。 *the-stack*はただのスタックではなくa-listになっていて関数が呼び出さ