#!/usr/bin/newlisp -s1000000
;;
;; Ackermann's Function
;;
;; By Brent Fulgham
(define (ack m n)
(cond ((= m 0) (+ n 1))
((= n 0) (ack (- m 1) 1))
(true (ack (- m 1) (ack m (- n 1))))))
(define (main)
(set 'N (integer (last (main-args))))
(println
(format "Ack(3,%d): %d" N (ack 3 N))))
(main)
(exit)