口臭严重吃什么药好得快| 男人气血不足吃什么药| 必修是什么意思| 煨是什么意思| 做梦梦见火是什么意思| 3月19是什么星座| 小孩子流鼻血是什么原因| 颈椎痛挂什么科| 什么是牙冠| 车前草有什么功效和作用| 窝里横是什么意思| 懒趴是什么意思| 女生月经不规律的原因是什么| 诺如病毒吃什么药最有效| 兵马俑是什么意思| 降尿酸什么药最好| 牙疼吃什么药最管用| 格桑花是什么意思| 一抹是什么意思| 吃冰糖有什么好处和坏处| 萎缩性胃炎吃什么水果好| ce是什么意思| 谷字五行属什么| 护理部是干什么的| 冰雪什么| 纳豆是什么东西| 坐飞机不能带什么物品| 溜达鸡是什么意思| 青睐是什么意思| 母胎单身是什么意思| 灶性肠化是什么意思| 蜂蜜喝了有什么好处| 孕妇脚肿是什么原因| 露出什么意思| 不均质回声是什么意思| 吃什么全面补充维生素| 莲蓬乳是什么| 990金是什么金| 有炎症吃什么药| 葡萄球菌感染是什么原因引起的| 权衡利弊的意思是什么| 颈椎间盘突出有什么症状| 决明子泡水喝有什么功效| 非主流什么意思| 血糖高喝什么牛奶好| 苏州有什么特产可以带回家| 胃溃疡是什么| db是什么单位| 喜用神是什么意思| c反应蛋白是查什么的| 什么奶粉好啊| 甘油三酯是什么意思| 臭氧是什么| 梦见自己丢钱了什么征兆| 宝宝吃什么鱼比较好| 螃蟹和什么不能一起吃| 什么中毒查不出来| 正月二十是什么星座| 脆肉鲩是什么鱼| 气血不足吃什么调理| 下午3点到5点是什么时辰| 平痛新又叫什么| 加拿大属于什么洲| 什么是忧郁症| 家是什么结构的字| 身上长很多痣是什么原因| 支气管炎能吃什么水果| 天之骄子是什么意思| 什么病才吃阿昔洛韦片| 检查淋巴挂什么科| 香菇吃多了有什么危害| 交公粮是什么意思| 息肉是什么原因引起的| 喝什么能减肥| 巡抚相当于现在的什么官| 八面玲珑指什么生肖| 脚磨破了涂什么药| 风俗是什么意思| 小孩发烧可以吃什么水果| 副团级是什么军衔| txt是什么意思| 枕头底下放剪刀有什么说法| 溶肌症的症状是什么| 招风耳适合什么发型| 彩礼什么时候给女方| 男人做噩梦是什么预兆| 神经性耳鸣有什么症状| 正直是什么意思| 鼻窦炎用什么药| 欲钱知吃月饼是什么生肖| 你说到底为什么都是我的错| 现在买什么股票好| 海茸是什么东西| 我想成为一个什么样的人| 胡萝卜和什么不能一起吃| 紧急避孕药什么时候吃有效| vc是什么| 苏轼是什么朝代的| 降火祛痘喝什么茶| dr检查是什么意思| 脑梗是什么原因造成的| 肝功能七项是检查什么| 煮馄饨放什么调料| 支原体是什么| 烁字五行属什么| 猫的五行属什么| 胆结石吃什么| 银925什么意思| 盛夏是什么时候| 霜对什么| 牙齿贴面是什么意思| 什么样的房子不能住人脑筋急转弯| 高山仰止是什么意思| 合集是什么意思| 韭菜补什么| 真菌菌丝阳性什么意思| 尿液发红是什么原因| carnival手表什么牌子| 假牙什么材质的最好| 卫生纸筒可以做什么| 精索静脉曲张吃什么药| 军校出来是什么军衔| 水至清则无鱼什么意思| 脂肪液化是什么意思| 竹蔗是什么| 属狗是什么命| 臁疮是什么病| 什么的屏障| skll什么牌子| 怀孕子宫前位和后位有什么区别| 第二性征是什么| bgm网络语什么意思| 盥洗是什么意思| 脑血栓是什么意思| 心度高血压是什么意思| 气是什么| 眼睛长眼屎是什么原因| 丑未相冲的结果是什么| 空调外机很响是什么原因| 子宫切除后要注意什么| 冰火两重天什么意思| 血常规24项能查出什么病| 手脚出汗什么原因| 严什么什么重| 司长什么级别| 面部抽搐是什么原因| 查颈椎挂什么科| 大逆不道什么意思| 高血压高血糖能吃什么水果| ih医学上是什么意思| 上火便秘吃什么最快排便| 啤酒鸭可以放什么配菜| waist是什么意思| 覆水难收什么意思| 洧是什么意思| 面瘫吃什么药| 什么病不能吃松花粉| 6月1是什么星座| 点卯是什么意思| 甲功七项挂什么科| 有的没的是什么意思| nub是什么意思| 人设是什么意思| 满月脸是什么意思| 合肥什么时候出梅| 身上出冷汗是什么原因| 分分钟都妙不可言是什么歌| 双眼屈光不正是什么意思| 暗无天日是什么意思| 荸荠读音是什么| 女人更年期什么症状| 散光是什么意思| 孽障是什么意思| 西瓜像什么比喻句| 乌龟代表什么数字| 遥遥相望是什么意思| 石女什么样| mt是什么| 胃溃疡吃什么中成药| 梦见蔬菜是什么预兆| 小孩老是咬手指甲是什么原因| 看指甲挂什么科| 什么是干冰| 长春都有什么大学| 苹果醋有什么功效| 霍乱是什么病| 胰腺炎是什么引起的| 来龙去脉是什么意思| 肚子为什么会胀气| 梦到蛇是什么意思周公解梦| 梦见自己怀孕是什么意思| 什么水果对皮肤好祛痘| 房颤挂什么科| 背靠背协议是什么意思| 牙齿里面疼是什么原因| 旌旗是什么意思| 抹茶是什么| 螳螂捕蝉黄雀在后是什么生肖| 延时吃什么药| 什么是植物油| 熟地黄是什么| 晨跑有什么好处| 木石念什么| 忧思是什么意思| 烧心是什么原因引起的| 细水长流是什么生肖| 发烧嗓子疼吃什么药好| 梦魇是什么| 廉航是什么意思| 君山银针属于什么茶| 总做噩梦是什么原因| 荔枝有什么作用| 印枭是什么意思| 马的尾巴有什么作用| 送老师什么礼物好| 孵化是什么意思| 0l是什么意思| 肝ca是什么意思| 好巴适是什么意思| 小t是什么意思| ph值什么意思| 笔画最多的字是什么字| 熊人是什么意思| 谷氨酸高是什么原因| 不速之客的速是什么意思| 豌豆的什么不能吃| 同型半胱氨酸是什么| 中暑不能吃什么| 髂静脉在什么位置| 有氧运动和无氧运动有什么区别| 稀料对人体有什么危害| 蒙古族信仰什么教| 减肥期间适合吃什么| 更是什么结构的字| 什么的秋天| 说话不清楚去医院挂什么科| 请辞是什么意思| 脑ct能查出什么| 歹且念什么| 脚肿是什么原因| 曼字五行属什么| 瞬息万变是什么意思| 做激光近视眼手术有什么危害| 梦见买狗是什么意思| 泡脚有什么好处| aug什么意思| 李自成为什么会失败| 智能电视什么品牌好| 孟子名什么| 生肠是什么| hoka跑鞋中文叫什么| 访谈是什么意思| 来月经前头痛什么原因| 考试前吃什么提神醒脑| 香菇配什么菜炒着好吃| AX是什么意思| 自言自语是什么原因导致| 聊表心意什么意思| 奥斯卡小金人什么意思| 屈光和近视有什么区别| 鼻咽炎吃什么药| 中国的国球是什么球| 七月三号什么星座| 拉屎为什么是黑色的| 百度Jump to content

三浦春马恋情曝光 女友为世界知名舞蹈演员菅原小春

From Wikipedia, the free encyclopedia
Initial releasemid 2007; 18 years ago (2007)
Stable release
7.3.19[1] Edit this on Wikidata (26 February 2025; 5 months ago (26 February 2025))
Repository
Written inRPython
Operating systemCross-platform
TypePython interpreter and compiler toolchain
LicenseMIT
Websitepypy.org Edit this on Wikidata
百度 只要有时间,他就会四处走走,去会一会诗朋画友。

PyPy (/?pa?pa?/) is an implementation of the Python programming language.[2] PyPy often runs faster than the standard implementation CPython because PyPy uses a just-in-time compiler.[3] Most Python code runs well on PyPy except for code that depends on CPython extensions, which either does not work or incurs some overhead when run in PyPy.

PyPy itself is built using a technique known as meta-tracing, which is a mostly automatic transformation that takes an interpreter as input and produces a tracing just-in-time compiler as output. Since interpreters are usually easier to write than compilers, but run slower, this technique can make it easier to produce efficient implementations of programming languages. PyPy's meta-tracing toolchain is called RPython.

PyPy officially supports Python 2.7 and 3.11[4] and has a few differences in implementations compared to CPython.[5]

Details and motivation

[edit]

PyPy aims to provide a common translation and support framework for producing implementations of dynamic languages, emphasizing a clean separation between language specification and implementation aspects. It also aims to provide a compliant, flexible and fast implementation of the Python programming language using the above framework to enable new advanced features without having to encode low-level details into it.[6][7]

RPython

[edit]

The PyPy interpreter itself is written in a restricted subset of Python called RPython (Restricted Python).[8] RPython puts some constraints on the Python language such that a variable's type can be inferred at compile time.[9]

The PyPy project has developed a toolchain that analyzes RPython code and translates it into a form of byte code, which can be lowered into C. There used to be other backends in addition to C (Java, C#, and JavaScript), but those suffered from bitrot and have been removed. Thus, the recursive logo of PyPy is a snake swallowing itself since the RPython is translated by a Python interpreter. The code can also be run untranslated for testing and analysis, which provides a nice test-bed for research into dynamic languages.

It allows for pluggable garbage collectors, as well as optionally enabling Stackless Python features. Finally, it includes a just-in-time (JIT) generator that builds a just-in-time compiler into the interpreter, given a few annotations in the interpreter source code. The generated JIT compiler is a tracing JIT.[10]

RPython is now also used to write non-Python language implementations, such as Pixie.[11]

Project status

[edit]

PyPy as of version 7.3.17 is compatible with two CPython versions: 2.7 and 3.10.[12][13] The first PyPy version compatible with CPython v3 is PyPy v2.3.1 (2014).[14] The PyPy interpreter compatible with CPython v3 is also known as PyPy3.

PyPy has JIT compilation support on 32-bit/64-bit x86 and 32-bit/64-bit ARM processors.[15] It is tested nightly on Windows, Linux, OpenBSD and Mac OS X. PyPy is able to run pure Python software that does not rely on implementation-specific features.[16]

There is a compatibility layer for CPython C API extensions called CPyExt, but it is incomplete and experimental. The preferred way of interfacing with C shared libraries is through the built-in C foreign function interface (CFFI) or ctypes libraries.

History

[edit]

PyPy is a followup to the Psyco project, a just-in-time specializing compiler for Python, developed by Armin Rigo between 2002 and 2010. PyPy's aim is to have a just-in-time specializing compiler with scope, which was not available for Psyco.[clarification needed] Initially, the RPython could also be compiled into Java bytecode, CIL and JavaScript, but these backends were removed due to lack of interest.

PyPy was initially a research and development-oriented project. Reaching a mature state of development and an official 1.0 release in mid-2007, its next focus was on releasing a production-ready version with more CPython compatibility. Many of PyPy's changes have been made during coding sprints.

  • In August 2008, PyPy was able to run some popular Python libraries like Pylons,[17] Pyglet,[18] Nevow[19] and Django.[20]
  • On 12 March 2010, PyPy 1.2 was released, focusing on speed. It included a working, though not yet stable, just-in-time compiler.[21]
  • On 30 April 2011, PyPy version 1.5 was released, which reached compatibility with CPython 2.7.[22]
  • On 9 May 2013, PyPy 2.0 was released, which introduced alpha-quality support for JIT compilation on ARMv6 and ARMv7 JIT, and included CFFI in the standard library.[23][24]
  • On 20 June 2014, PyPy3 was declared stable[14] and introduced compatibility with the more modern Python 3. It was released alongside PyPy 2.3.1 and bears the same version number.
  • On 21 March 2017, the PyPy project released version 5.7 of both PyPy and PyPy3, with the latter introducing beta-quality support for Python 3.5.[25]
  • On 26 April 2018, version 6.0 was released, with support for Python 2.7 and 3.5 (still beta-quality on Windows).[26]
  • On 11 February 2019, version 7.0 was released, with support for Python 2.7 and 3.5.[27]
  • On 14 October 2019, version 7.2 was released, with support for Python 3.6.9.[28]
  • On 24 December 2019, version 7.3 was released, with support for Python 3.6.9.[29]
  • On 16 February 2020, the PyPy team announced the move of the source code hosting from Bitbucket to heptapod.net with the repositories of the CFFI (C Foreign Function Interface) project. A new logo and website design are also published. However, the author and the license of the new logo are unknown.[30]
  • On 29 December 2023, PyPy announced hosting has moved to GitHub and development will now be tracked with git.[31]

Funding

[edit]

PyPy was funded by the European Union being a Specific Targeted Research Project[32] between December 2004 and March 2007. In June 2008, PyPy announced funding being part of the Google Open Source programs and has agreed to focus on making PyPy more compatible with CPython. In 2009 Eurostars, a European Union funding agency specially focused on SMEs,[33] accepted a proposal from PyPy project members titled "PYJIT – a fast and flexible toolkit for dynamic programming languages based on PyPy". Eurostars funding lasted until August 2011.[34] At PyCon US 2011, the Python Software Foundation provided a $10,000 grant for PyPy to continue work on performance and compatibility with newer versions of the language.[35] The port to ARM architecture was sponsored in part by the Raspberry Pi Foundation.[23]

The PyPy project also accepts donations through its status blog pages.[36] As of 2013, a variety of sub-projects had funding: Python 3 version compatibility, built-in optimized NumPy support for numerical calculations and software transactional memory support to allow better parallelism.[23]

See also

[edit]

Notes

[edit]
  1. ^ "PyPy v7.3.19 release". Retrieved 12 March 2025.
  2. ^ "Interview Maciej Fijalkowski PyPy". 29 November 2015.
  3. ^ "PyPy Speed". speed.pypy.org. Retrieved 2025-08-06.
  4. ^ "PyPy". 30 December 2024.
  5. ^ "Differences between PyPy and CPython — PyPy documentation". 30 December 2024.
  6. ^ Samuele Pedroni (March 2007). "PyPy – Goals and Architecture Overview". Archived from the original on 2025-08-06.
  7. ^ "PyPy – Goals and Architecture Overview – Mission Statement". Retrieved 11 October 2013.
  8. ^ Our runtime interpreter is "RPython", Coding Guide – PyPy documentation
  9. ^ "It is a proper subset of Python, restricted in a way that enables easy analysis and efficient code generation", Ancona et al., 2007.
  10. ^ Bolz, Carl; Cuni, Antonio; Fijalkowski, Maciej; Rigo, Armin. Tracing the Meta-Level: PyPy's Tracing JIT Compiler. ICOOOLPS '09. doi:10.1145/1565824.1565827.
  11. ^ Timothy Balridge interview.
  12. ^ "PyPy – Python compatibility". pypy.org. 28 December 2019. Retrieved 2025-08-06.
  13. ^ "PyPy v7.3.7: bug-fix release of 3.7, 3.8". pypy.org. 25 October 2021. Retrieved 2025-08-06.
  14. ^ a b the PyPy team (20 June 2014). "PyPy3 2.3.1 – Fulcrum". PyPy blog.
  15. ^ "PyPy v7.2.0: release of 2.7, and 3.6". pypy.org. 16 October 2019.
  16. ^ "PyPy – Python compatibility". 28 December 2019.
  17. ^ "Running pylons on top of PyPy". 10 June 2008.
  18. ^ "Running Pyglet on top of PyPy". 20 February 2008.
  19. ^ "Running Nevow on top of PyPy". 20 June 2008.
  20. ^ "PyPy runs unmodified django 1.0 beta". 19 August 2008.
  21. ^ "Introducing the PyPy 1.2 release". 30 April 2011.
  22. ^ "PyPy 1.5 Released: Catching Up". 12 March 2010.
  23. ^ a b c Jake Edge (15 May 2013). "A look at the PyPy 2.0 release". LWN.net.
  24. ^ "PyPy 2.0 – Einstein Sandwich". 9 May 2013.
  25. ^ "PyPy2.7 and PyPy3.5 v5.7 – two in one release". 21 March 2017.
  26. ^ "PyPy2.7 and PyPy3.5 v6.0 dual release". 26 April 2018.
  27. ^ Cuni, Antonio (2025-08-06). "PyPy Status Blog: PyPy v7.0.0: triple release of 2.7, 3.5 and 3.6-alpha". PyPy Status Blog. Retrieved 2025-08-06.
  28. ^ Mattip (2025-08-06). "PyPy Status Blog: PyPy v7.2 released". PyPy Status Blog. Retrieved 2025-08-06.
  29. ^ Mattip (2025-08-06). "PyPy Status Blog: PyPy v7.3.0 released". PyPy Status Blog.
  30. ^ "PyPy and CFFI have moved to Heptapod". 16 February 2020.
  31. ^ "PyPy has moved to Git, GitHub". 29 December 2023.
  32. ^ "EU Community Research and Development Information Service Entry".
  33. ^ "Eurostars – Aim Higher".
  34. ^ "Project Page on Eureka Network". Archived from the original on 2025-08-06. Retrieved 2025-08-06.
  35. ^ "A thank you to the PSF". 22 March 2011.
  36. ^ "PyPy Status Blog: Oh, and btw: PyPy gets funding through "Eurostars"". 10 December 2010.

References

[edit]
[edit]
婴幼儿积食会有什么症状 pdw偏低是什么意思 煤油对人体有什么危害 猪肉炒什么好吃 骨折吃什么好得快
打两个喷嚏代表什么 镭射是什么意思 吃了发芽的土豆会有什么症状 男人左眼下有痣代表什么 空亡是什么意思
轻微脑震荡吃什么药 周围神经病是什么意思 双手发抖是什么原因 什么东西最好卖 食物中毒吃什么药解毒
math是什么意思 卩是什么意思 外感病是什么意思 抱恙是什么意思 古怪是什么意思
烧碱是什么hcv9jop2ns4r.cn 宫颈肥大伴纳氏囊肿是什么意思dayuxmw.com 血清铁蛋白是检查什么hcv9jop6ns2r.cn 口干口渴是什么原因hcv8jop0ns8r.cn 小便泡沫多是什么原因hcv9jop6ns5r.cn
裂变是什么意思hcv7jop6ns4r.cn 2019年属什么生肖hcv9jop6ns0r.cn 海松茸是什么hcv8jop3ns6r.cn 7朵玫瑰花代表什么意思luyiluode.com 臀纹不对称有什么影响hcv7jop4ns7r.cn
基因突变发生在什么时期hcv9jop5ns5r.cn 长期失眠挂什么科hcv7jop6ns3r.cn graves病是什么病bfb118.com 121是什么意思gysmod.com 酸入肝是什么意思hcv9jop5ns1r.cn
部委是什么意思hcv9jop8ns2r.cn 尿胆原normal是什么意思hcv8jop5ns3r.cn 嗓子疼吃什么药好得快hcv9jop6ns9r.cn 87年属什么的hcv8jop2ns3r.cn 活化是什么意思adwl56.com
百度