创新易联欢迎您!16年高端网站建设品牌

为何PyPy 是Python的趋势?

日期:2014-08-26 | 来源:易联网站建设公司 | 阅读:

        深圳网站建设www.innont.com )作为市场资深品牌,8年来,立足广东,面向全国,已服务过3000多家具有顶级发展潜力的企业,并一直保持良好的合作伙伴关系,成为中国第一高端精品网站设计策划机构,网站建设第一品牌!


        PyPy为优化和进一步的语言开发提供了更好的架构。对于大部分Python已有的问题,PyPy已经提供了解决方案:先进的runtime和设计,在此文中作了介绍: The Architecture of Open


        Source Applications.
速度 - PyPy内置的JIT很棒,有时(其实很少)甚至可以与C相提并论。
GIL问题 - PyPy引入了一个很棒的STM实现,在 Armins Rigo的 文章中对此作了介绍。
粘合代码 - 使用cffi可以简单的处理C库,甚至比CPython的ctypes还要快!
异步编程。这方面,PyPy内置的 greenlet 比CPython的C扩展更适合一些。实际上,非堆栈式的概念(也即greenlet)在PyPy中还在继续发展(参看

https://ep2012.europython.eu/conference/talks/the-story-of-stackless-python
沙盒技术
应用在web和移动中。这里有Dusty的一些文章:Pushing Python Past the Present
PyPy已经支持多平台 (x86, 64_x86, ARM)

为何 PyPy 是趋势?


        PyPy为优化和进一步的语言开发提供了更好的架构。对于大部分Python已有的问题,PyPy已经提供了解决方案:先进的runtime和设计,在此文中作了介绍: .
速度 - PyPy内置的JIT很棒,有时(其实很少)甚至可以与C相提并论。
GIL问题 - PyPy引入了一个很棒的STM实现,在 Armins Rigo的 中对此作了介绍。
粘合代码 - 使用cffi可以简单的处理C库,甚至比CPython的ctypes还要快!
异步编程。这方面,PyPy内置的 greenlet 比CPython的C扩展更适合一些。实际上,非堆栈式的概念(也即greenlet)在PyPy中还在继续发展(参看)
沙盒技术 应用在web和移动中。这里有Dusty的一些文章:
PyPy已经支持多平台 (x86, 64_x86, ARM)


        PyPy同时还包含了一个优秀的现代的架构,在 中做了介绍,演讲的要点是:

解释性语言的框架 用于研究和产品的组件组合 (不同的数据模型,垃圾回收 - 这些可以在具体的应用场景进行改变) 构建在基于组件链的功能架构之上(翻译工具链)。每一个步骤都会延续/转换程序模型、引入特征、各种后端(JVM, JavaScript, LLVM, GCC IR等等)。来看一下翻译链的例子:python 代码 -> 字节码 -> 函数对象 -> 类型推断 -> 垃圾


        收集器 -> JIT
包含大量在架构的不同层次开发的现代的优化技术 (这个任务可以简化)
相信让所有软件支持PyPy需要付出艰巨的努力 - 需要在现有的库上做很多工作。不过使用新的工具,编写支持PyPy和CPython的软件会比采用C扩展的方式更简单一些(在我们能做什么一节有介绍)。

 

 

本文由深圳网站建设公司:创新互联Alan整理,如需咨询请联系在线客服

—— 微信公众号 ——

热门标签