4

PyPy 1.7 的默认构建包含无堆栈,不提供在没有递归深度限制的情况下运行的能力(以直接方式)。

为什么?

Previus 构建的 PyPy 具有无堆栈支持函数调用和尾递归的延续风格。

我不是在问涉及协程的解决方案,而是在寻找集成 stackelss 的问题。

4

1 回答 1

2

原因是新的连续体在操作系统级别的堆栈上工作,这是有限的(但是在翻译过程中它们比旧的无堆栈变换简单得多

目前正在进行一项针对 continulet jit 的工作,该工作将堆栈作为 gc 管理的块进行试验

如果这成功了,stackless 的“无限”堆栈将以分配新堆栈块的形式返回,直到你用完内存

于 2012-09-21T06:38:46.000 回答