;;; Factorial computation in Oaklisp
;;; Oaklisp is an object-oriented dialect of Scheme

(define (factorial n)
  (if (<= n 1)
      1
      (* n (factorial (- n 1)))))

(define (print-factorial n)
  (format #t "~A! = ~A~%%" n (factorial n)))

(dotimes (i 10)
  (print-factorial (+ i 1)))
