; mccarthy's 91 function
(define (m n)
(if (< 100 n) (- n 10)
(m (m (+ n 11)))))
(display (m 87)) (newline)
(define (mccarthy n)
(define (m n d)
(do ((i 0 (+ i 1))) ((= i d) (display n))
(display "M("))
(do ((i 0 (+ i 1))) ((= i d) (newline))
(display ")"))
(if (positive? d)
(if (< 100 n)
(m (- n 10) (- d 1))
(m (+ n 11) (+ d 1)))))
(m n 1))
(mccarthy 87)