; @echo off ; mzscheme.exe -f ackermann.bat -mvC %1 ; goto :end (define (main args) (let ([n (string->number (car args))]) (print-list "Ack(3," n "): " (ack 3 n)))) (define (ack m n) (cond ((zero? m) (+ n 1)) ((zero? n) (ack (- m 1) 1)) (else (ack (- m 1) (ack m (- n 1)))))) (define (print-list . items) (for-each display items)) ; :end