Pyston是什么

Fanly问答2021-05-08 21:31:49阅读(...)

Pyston几乎支持所有Python语义。另外还实现了许多用法,这些用法一般不认为是Python的特性,但一些常见的第三方库中会用到。如支持内置函数中所有的参数组合,或一些技巧性的用法,如修改sys.module来改变一条导入语句的结果。

Pyston 几乎支持所有 Python 语义。另外,Pyston 还实现了许多用法,这些用法一般不认为是 Python 的特性,但一些常见的第三方库中会用到。如支持内置函数中所有的参数组合(如将 None 传递给 map),或一些技巧性的用法,如修改 sys.module 来改变一条导入语句的结果。

Pyston

这些新特性意味着 Pyston 能支持许多常见的库。现在 Pyston 已经能运行许多常见库的测试套件,如 Django 和 Sqlalchemy,今后会支持更多库。Pyston 现在还将 CPython 的测试套件纳入考察范围,目前已将 153 个 CPython 测试文件(CPython 共有 401 个)添加到 Pyston 的测试套件中。

Pyston 还初步支持了 NumPy。目前,NumPy 支持对 Pyston 的优先级并不高(Pyston 最初的目标并不会用到 NumPy),但我们依然花了一点时间来让一些简单的 NumPy 示例可以运行。

在 Pyston 2.2 中,开发者声称他们的实现比用于网络服务器基准的 Python 库存快 30%。这次的提速包括他们的 JIT 和属性缓存机制的工作。此外,Facebook 引入了 Cinder 作为一个新的孵化器项目,提供快速的 Python JIT 实现。

虽然这个前 Dropbox 项目在 Pyston 2.0 时是闭源的,但在 Pyston 2.2 时,代码已经回归开源。Pyston 2.2 是开源的,而在这个项目上工作的开发者现在正以开源的商业模式提供支持服务。

收藏0个人收藏
走进科技生活方式