(let ((div2 (lambda (n) (n (lambda (x) (x (lambda (so-far odd?) (odd? ;; lambda (p) here and after is inlined cons (lambda (p) (p ;; Inlined successor (lambda (f x) (f (so-far f x))) nil)) ;; cons so-far t (lambda (p) (p so-far t)))))) (lambda (p) (p 0 nil))))) (fixpoint-combinator2 #+nil (lambda (g) (let ((inner (lambda (x) (g (x x))))) (inner inner))) (lambda (f) (let ((inner (lambda (x) (f (lambda (y z) (x x y z)))))) (inner inner)))) (binary (fixpoint-combinator2 (lambda (recur acc n) ((div2 n) (lambda (res rem) (res (lambda (x) ;; cons bool acc (recur (lambda (p) (p rem acc)) res)) ;; cons bool acc (lambda (p) (p rem acc))))))))) (binary nil))