Есть ли на каком-то языке или платформе фиксированный размер стека и поэтому непросто переполнить? Я помню, что с помощью C в UNIX стек был сложным переполнением, а еще во времена Win 3.1, стек был очень легко переполнен.
Какой язык/платформа не имеет фиксированного размера стека?
Ответ 1
Если по "стеку" вы имеете в виду любой старый стек, большинство языков - Java имеет stack класс, ограниченный только памятью, Скорее всего, вы имеете в виду стек вызовов, и в этом случае самым большим примером, который я могу придумать, является Stackless Python, который, на мой взгляд, использует (например, Java) в качестве стека вызовов для кода Python, а не с использованием стека вызовов C.
Ответ 2
это вопрос практического и теоретического. стек интерпретатора lisp ограничен только доступной памятью
в схеме и других языках, реализующих хвостовую рекурсию, хвостовая рекурсивная функция будет иметь бесконечный стек
Ответ 3
Mac Systems 6, 7 и 8 имели стеки вызовов, которые могли расти без искусственного ограничения.
У него также нет гарантированного способа обнаружить столкновение с кучей-кучей и может вызвать у вас всевозможные проблемы...