Может ли каждая рекурсия быть преобразована в итерацию?

A Reddit Тема поднял по-видимому интересный вопрос:

Хвостовые рекурсивные функции могут быть легко преобразованы в итерационные функции. Другие, могут быть преобразованы с помощью явного стека. Можнокаждый преобразовать ли рекурсию в итерацию?

Примером (счетчика?) В посте является пара:

(define (num-ways x y)
  (case ((= x 0) 1)
        ((= y 0) 1)
        (num-ways2 x y) ))

(define (num-ways2 x y)
  (+ (num-ways (- x 1) y)
     (num-ways x (- y 1))

Ответы на вопрос(17)

Ваш ответ на вопрос