您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Stackless Python有哪些缺点?[关闭]

Stackless Python有哪些缺点?[关闭]

我不知道Wiki上的“ stackless速度提高10%”来自何处,但是我再也没有尝试过衡量这些性能数字。我想不出stackless所做的那么大的改变。

stackless一个出色的工具,它具有多个组织/政治问题。

一个来自历史。克里斯蒂安·蒂斯麦(Christian Tismer)开始谈论大约10年前最终变成stackless的事情。他对自己想要的东西有所了解,但是很难解释自己在做什么以及人们为什么要使用它。部分原因是他的背景没有接受有关协程等概念的CS培训,并且他的演示和讨论都非常注重实现,这对那些尚未深思熟虑的人来说很难理解如何将其用作解决方案。他们的问题。

因此,最初的文档很差。其中有一些关于如何使用它的描述,其中有来自第三方贡献者的最好的描述。根据PyCon的调查数字,在PyCon 2007上,我发表了有关“使用无堆栈”的演讲,该演讲进行得很顺利。理查德·图(Richard Tew)在收集这些内容,更新stackless.com以及在发布新的Python版本时保持发行版方面做得非常出色。他是EVE Online开发商CCP Games的雇员,该公司使用stackless作为其游戏系统的重要组成部分。

CCP游戏也是人们谈论stackless时使用的最大的现实世界示例。stackless的主要教程是Grant Olson的“ Stackless Python并发编程简介”,它也是面向游戏的。我认为这给人们带来了一个错误的想法,即stackless是面向游戏的,而更多的是游戏更容易面向延续。

一个困难是源代码。它的原始形式需要对Python的许多部分进行更改,这使得Python的领导者Guido van Rossum变得警惕。我认为,部分原因是对call / cc的支持,该支持后来被删除,因为“太像在拥有更好的高级表单时支持goto了”。我不确定这段历史,因此只需将本段读为“ stackless曾经需要太多更改”。

以后的版本不需要更改,Tismer继续推动将其包含在Python中。尽管有一些考虑,但官方的立场(据我所知)是cpython不仅是Python实现,而且是参考实现,并且不包含stackless功能,因为Jython无法实现或Iron Python。

绝对没有“ 代码 进行 重大更改 ”的计划。Arafangion的引用和参考超链接(请参阅注释)大约来自2000/2001。结构更改已经完成很长时间了,这就是我上面提到的。现在,无栈是稳定且成熟的,在过去几年中仅对代码库进行了少量调整。

stackless的最后一项限制- 没有强烈主张stackless。Tismer现在与PyPy紧密合作,PyPy是用于Python的Python实现。他已经在PyPy中实现了stackless功能,并认为它比stackless本身要优越得多,并认为PyPy是未来的方式。Tew保持stackless,但他对倡导不感兴趣。我考虑过担任那个角色,但看不到如何从中赚钱。

虽然如果您想在stackless中进行培训,请随时与我联系!:)

python 2022/1/1 18:38:45 有256人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶