(define (factorial n) (if (zero? n) 1 (* n (factorial (- n 1))))) ;;; ANF (define (factorial n) (let ((r₁ (zero? n))) (if r₁ 1 (let ((r₂ (- n 1)) (r₃ (factorial r₂)) (r₄ (* n r₃))) r₄))))