let factorial n = let rec go n acc = if n <= 1 then acc else go (n - 1) (n * acc) in go n 1 ;; factorial 12