1 2 3 4 5 6 7 8 9 10 11 12
(define Y! (lambda (L) (let ((h (lambda (l)(quote ())))) (set! h (L (lambda (arg)(h arg)))) h))) (define Y-bang (lambda (f) (letrec ((h (f (lambda (arg)(h arg))))) h)))