(define (Fact my-fact)
(lambda (n)
(if (= n 0)
1
(* n (my-fact (- n 1))))))

(define fact (Y Fact))

(fact 10)
3628800