Я переписываю некоторый существующий код в условиях, когда рекурсивные вызовы не легко реализовать и не желательно. (И в Fortran 77, если хотите знать.) Я думал создать стек с нуля, чтобы отслеживать необходимые вызовы, но это кажется неуклюжим, и я бы предпочел не выделять память массиву в тех случаях, когда рекурсия не глубокая. (Я не уверен, что Fortran 77 также поддерживает изменение размера динамического массива.)
Любые другие предложения для общего решения о том, как взять явно рекурсивную функцию и переписать ее нерекурсивно, не теряя места в стеке?
Большое спасибо, Старый МакСт