Здравствуйте, CreatorCray, Вы писали:
Тё>>>>Ну давай, расскажи нам, как заменить стек не-хвостовой рекурсии на цикл.
CC>>>Артёмка, не позорься!
Тё>>Ты даже не понял, о чём речь, не так ли?
CC>Нет Артёмка, это просто ты не в курсе как это делается. Хвостовая вообще примитивно, в таком раскладе изначально рекурсию грех писать. Обычная всего то чуточку сложнее, с ручной манипуляцией контекстом. Но переделать в фиксированное использование стекового фрейма можно любую.
Какая ещё "ручной манипуляцией контекстом"? Ты вообще понял, что рекурсия- это про стек прежде всего? То, что ты вместо использования стека thread организуешь стек на чём-то ещё, не отменяет расхода памяти. Это "где-то ещё", если это куча, снизит. перфоманс.
Кроме того, современные оптимизирующие компиляторы C++ и JIT разворачивают хвостовую рекурсию в цикл. Твои потуги только заговняют код.