CommonLisp Scheme Part13 at TECH
[2ch|▼Menu]
516:デフォルトの名無しさん
05/07/05 17:26:14
>>514の続き(ここまで)
ソースコードは末尾再帰になっているので、
a_procのスコープは呼び出しにかかわらず単一であると考えると、そのスコープ内で
2>〜3>で表示されている最初の束縛関係が、一度5>〜6>のように変更されています。
ところが、18:〜22:で内部手続きを作成すると、そこでは、
変更されたの束縛関係(5>〜6>)ではなく最初の束縛関係(7>〜8>)に戻っています。
R5RS 4.1.4 Procedures には
The environment in effect when the lambda expression was evaluated is
REMEMBERED as part of the procedure.
とあります。
この「REMEMBER」という語は「そのScopeへの参照を記憶する」ことを意味すると
理解していたのですが、上の実験結果を見る限り
「そのScopeを元に作成した複製を保持する」と解釈すべきなのでしょうか?
全く思い違いをしているかもしれません。ご指摘ください。



次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5381日前に更新/268 KB
担当:undef