- 288 名前:270 mailto:sage [04/09/13 22:02:21]
- うー、そういう問題があるのですか…。
スペシャルフォームを引数に取れると便利だという例をちょっと 書いてみました。 関数と違い、すべての要素を評価しないスペシャルフォームなので、 途中で結果がわかれば、リストを最後まで評価せずに止まります。 テストはしておりませんので、バグっていたらごめんなさい。 ;関数を返す関数。引数に and か or を取る。 (define make-function (lambda (s-form) (lambda (list0) (s-form (atom? (car list0)) ((make-function s-form) (cdr list0)))))) ;リストにアトムが含まれるか? (define has-atom? (make-function or)) ;リストの要素がすべてアトムか? (define all-atom? (make-function and))
|

|