Lisp Scheme Part19
■ このスレッドは過去ログ倉庫に格納されています
0798デフォルトの名無しさん
2008/03/02(日) 15:58:42わかりました。ありがとうございました。
>>795
次数の低い部分が先に求まるということですよね。
>>779も私なのですが、
(evens-only*&co (car l) ;再帰1
(lambda (al ap as)
(evens-only*&co (cdr l) ;再帰2
(lambda (dl dp ds)
(col (cons al dl) (* ap dp) (+ as ds)))))
これも同じように理解していいのでしょうか?
(1) 再帰2を実行する。
例えば、(col (cons al '(2 4)) (* ap 8) (+ as 6)) のような状態が作られる。
(2)(1)の結果に対して、再帰1が実行され、a1 ap as に具体的な値が求まる。
例えば、(col (cons '(6) '(2 4)) (* 6 8) (+ 1 6)) のような状態が作られる。
(1)の処理の後に(2)の処理が実行される。
>>797
考えて見ます。
>>798
前半部分の質問は勘違いですので撤回します。
自己末尾再帰が採用されているというよりは、自己末尾再帰で
処理可能な言語仕様になっていると言えば正しいですか?
■ このスレッドは過去ログ倉庫に格納されています