胃穿孔是什么原因引起的| 炒菜勾芡用什么淀粉| 旖旎风光是什么意思| 增强免疫力吃什么| 柯是什么意思| 什么的雕像| 大保健是什么意思| 副市长什么级别| 手和脚发麻是什么原因| 白脉病西医叫什么病| 66年属什么| 暮光是什么意思| 想做肠镜挂什么科| 中午可以吃什么| 函询是什么意思| 鸟儿为什么会飞| 脂肪肝吃什么药治疗| 蒲公英什么时候采最好| 慢性非萎缩性胃炎吃什么药| 尿酸高什么症状| 卡尔文克莱恩是什么牌子| 杨枝甘露是什么意思| 表白送什么礼物好| 老年人出现幻觉是什么原因| hbsab阳性是什么意思| 看耳朵挂什么科| 左耳朵痒代表什么预兆| 头孢全名叫什么| 青云志是什么意思| 胰腺炎不能吃什么食物| 属牛的跟什么属相最配| 小孩血糖高有什么症状| 风疹病毒是什么意思| 衣字旁有什么字| dhea是什么药| 大姨妈期间不能吃什么东西| 夏天脚冷是什么原因| 肺阴不足的症状是什么| 亥是什么意思| 羊水栓塞是什么原因引起的| 罗非鱼长什么样| 小孩耳鸣是什么原因引起的| 蚂蚁搬家是什么意思| 什么然而止| 吃坏肚子吃什么药| 琼瑶剧是什么意思| 小孩血压低是什么原因| 1989年是什么年| 月半是什么意思| nikon是什么牌子| 血药浓度是什么意思| 大熊猫为什么有黑眼圈| peek是什么材料| 蚊虫叮咬擦什么药膏| 肚脐中间疼是什么原因| 尿胆红素阳性是什么意思| 胃不好适合吃什么水果| 米线是用什么做的| 属龙女和什么属相最配| gln是什么氨基酸| 8月19日是什么星座| 红色的菜叫什么| 开小灶是什么意思| 子宫内膜不典型增生是什么意思| 什么东西降火| 副词是什么| 什么荔枝最贵| 眼袋是什么原因引起的| 二球是什么意思| 宫颈筛查hpv阳性是什么意思| 什么叫老人临终骨折| 化疗后吃什么排毒最快| 为什么拉屎是绿色的| 预科班什么意思| 带翅膀的黑蚂蚁是什么| 沙棘有什么功效| 孩子吃什么容易长高| 覆水难收什么意思| hsv是什么病毒| 头皮痒掉发严重是什么原因| 痛风什么蔬菜不能吃| 蘑菇是什么| 善字五行属什么| 富氢水是什么| 孩子感冒发烧吃什么药| 手心出汗是什么原因| 孕妇熬夜对胎儿有什么影响| 什么是紫外线| 什么是铅中毒| 痰多是什么原因| 明天属什么生肖| 神经性头疼是什么原因造成的| 仙人掌什么时候开花| 鸡蛋吃多了有什么危害| 左下眼皮跳是什么预兆| 男人精液少是什么原因| 过期牛奶可以做什么| 什么叫尿毒症| 阴阳人是什么意思| hsv1是什么病毒| 中国国鸟是什么| 榴莲什么时候吃是应季| 翡翠和玉有什么不同| 惭愧的意思是什么| 白肺是什么| 机械表是什么意思| 梦到老虎是什么意思| 猪苓是什么东西| 宫颈非典型鳞状细胞是什么意思| 茄子炒什么好吃| 尿酸高挂什么科| 16岁属什么| 子宫内膜不均匀是什么意思| 图图是什么意思| 修为是什么意思| 晚上适合吃什么| 诺氟沙星胶囊治什么病| 什么时候打胎对身体伤害最小| 1977年属蛇是什么命| 金陵十二钗是什么意思| 做爱为什么舒服| 月经期生气会造成什么后果| 唇周围长痘痘是什么原因| 多囊为什么要跳绳而不是跑步| 什么是牙齿根管治疗| 肚脐右边疼是什么原因| 舟可是什么字| 洗劫一空是什么意思| 什么是胰岛素| 省委组织部部长什么级别| 苏菲是什么| 婴儿头发竖起来是什么原因| 断肠草长什么样| 阑珊处是什么意思| 清心寡欲什么意思| 什么泉水| crf是什么意思| 萘普生是什么药| 鸡汤放什么调料| 老年人贫血吃什么补血最快最有效| 白细胞高是什么原因造成的| 睡莲为什么叫睡莲| 胸口容易出汗是什么原因| 胆结石挂什么科室| 孟字五行属什么| 转呼啦圈有什么好处| 狐惑病是什么病| 甲状腺挂什么科室| 总做梦是什么原因| 卟是什么意思| 什么样的枫叶| 三专是什么| 置换是什么意思| 紫菜不能和什么一起吃| 知了为什么会叫| 作奸犯科是什么意思| 红颜知己是什么| 一个尔一个玉念什么| 吃什么好消化| 梦见挖坑什么意思| pc是什么材质| 指标是什么意思| 多梦吃什么药效果最好| 高利贷是什么意思| 老虎的祖先是什么动物| 高风亮节是什么意思| 喝什么排湿气| 蜈蚣最怕什么药| 让平是什么意思| 三专是什么| au585是什么金| 鼠配什么生肖最好| 什么是生化| 男性早泄吃什么药| 宫腔镜是检查什么的| 手麻吃什么药最好| 彪子是什么意思| poems综合征是什么病| 做梦梦见马是什么意思| 天天都需要你爱是什么歌| 山西的简称是什么| 婴儿反复发烧是什么原因| oct试验是什么| 叶酸什么时候吃最好| 素色是什么颜色| 七月份怀孕预产期是什么时候| 什么药补血效果最好最快| 肠胃炎可以喝什么饮料| 儿童包皮过长挂什么科| 吃完饭就想睡觉是什么原因| 锌中毒是什么症状| 天上火是什么意思| 种植牙是什么| 膀胱过度活动症是什么原因引起的| 43岁属什么| 11月24是什么星座| 早孕期间吃什么最营养| 什么是先兆流产| sicu是什么科室| 早上起床口苦吃什么药| 什么鸡| 贴膏药发热是什么原因| 用什么可以美白| 刷存在感是什么意思| 狗狗可以吃什么水果| 1950年是什么年| exp是什么意思| 梦见捡到钱是什么意思| 是什么车| 商朝后面是什么朝代| 薤白是什么东西| 侃侃而谈什么意思| 为什么故宫龙椅坐不得| 海胆什么味道| 流光是什么意思| 性格开朗是什么意思| durex什么意思| 错综复杂是什么意思| 李约瑟难题是什么| 青岛是什么省| bodywash是什么意思| wwe是什么意思| 男人都是大猪蹄子是什么意思| 腰两边疼是什么原因| 孕妇梦见很多蛇是什么意思| 维生素h是什么| 生理盐水是什么东西| 霄字五行属什么| 梦见跟妈妈吵架是什么意思| 什么是导管| 麻是什么| 丙肝抗体阳性是什么意思呢| 巨蟹座前面是什么星座| 做梦掉粪坑什么征兆| 93是什么意思| 什么无为| 血热吃什么药可以凉血| 手发抖是什么病的先兆| 甲亢是一种什么病严重吗| 一什么点心| 身上红痣多是什么原因| 空巢老人什么意思| 怀孕乳头会有什么变化| 婉甸女装属于什么档次| 腰疼吃什么药好| 菊花茶为什么会变绿色| 煮毛豆放什么调料| 身份证什么时候可以办| 为什么小便是红色的尿| 白头发吃什么可以改善| 平衡液又叫什么名字| 一什么尾巴| 花肠是母猪的什么部位| 一马平川是什么生肖| 甲状腺不均质改变是什么意思| 女人梦见仇人代表什么| 痛经吃什么药好| 皮肤松弛是什么原因造成的| hold on什么意思| 嫦娥住的宫殿叫什么| 风湿看什么科室| 右手发麻是什么病的前兆| 香蕉为什么不能放冰箱| 男人睡觉流口水是什么原因| 百度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-05.
  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-05.
  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-05.
  13. ^ "PyPy v7.3.7: bug-fix release of 3.7, 3.8". pypy.org. 25 October 2021. Retrieved 2025-08-05.
  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-05). "PyPy Status Blog: PyPy v7.0.0: triple release of 2.7, 3.5 and 3.6-alpha". PyPy Status Blog. Retrieved 2025-08-05.
  28. ^ Mattip (2025-08-05). "PyPy Status Blog: PyPy v7.2 released". PyPy Status Blog. Retrieved 2025-08-05.
  29. ^ Mattip (2025-08-05). "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-05. Retrieved 2025-08-05.
  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]
怀孕小肚子疼是什么原因 甘少一横是什么字 梦见捉蛇是什么意思 小孩疳积有什么症状 女人为什么会喷水
吃什么菜对肝好怎么养肝 女人手心发热是什么原因 姜虫咬人有什么症状 二氧化碳是什么 黄花菜长什么样子
晚上喝什么有助于睡眠 仓鼠突然死了是为什么 嘴巴苦是什么原因 眼胀是什么原因 排卵期过后是什么期
65是什么意思 怀孕日期是从什么时候开始算 一什么天空 好朋友是什么意思 die是什么意思
风湿免疫科是什么病hcv8jop6ns7r.cn 注明是什么意思hcv7jop9ns9r.cn 大象的耳朵像什么一样hcv8jop7ns7r.cn 情是什么意思creativexi.com 需要透析的是什么病youbangsi.com
今年52岁属什么生肖helloaicloud.com 拔牙后吃什么消炎药hcv9jop3ns3r.cn 每个月14号都是什么情人节hcv9jop0ns2r.cn 大驿土命是什么意思hcv8jop9ns1r.cn 精气神是什么意思hcv9jop3ns9r.cn
尿液臭味很重什么原因hcv9jop0ns6r.cn 腰痛什么原因sscsqa.com 什么食物嘌呤含量高hcv8jop4ns9r.cn 李讷为什么不姓毛zsyouku.com 单核细胞偏高是什么原因hcv8jop7ns4r.cn
a4纸能折什么hcv7jop9ns3r.cn 相安无事是什么意思bysq.com 米诺地尔搽剂和米诺地尔酊有什么区别hcv9jop3ns7r.cn 看牙齿挂什么科hcv9jop5ns7r.cn 脑管瘤的症状是什么hcv8jop2ns3r.cn
百度