Может ли каждая рекурсия быть преобразована в итерацию?
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))