SICPの遅延評価版schemeで、LによるYコンビネータは上手くいった。

(define L (lambda (x) (lambda (y) (x (y y))))

(define Y (lambda (f) ((L f) (L f))))

((Y (lambda (f) (lambda (n) (if (= n 1) 1 (+ n (f (- n 1))))))) 10) # => 55


Uコンビネータが上手くいかない。

(define U (lambda (x) (lambda (y) (x ((y y) x)))))
(define Y (lambda (f) ((U U) f)))

ではない?

いや、問題なかった。