发布PyPy 0.7.0 [英] Release of PyPy 0.7.0

查看:48
本文介绍了发布PyPy 0.7.0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

pypy-0.7.0:第一个PyPy生成的Python实现

=========================== ======================= ============


什么曾经只是一些人在一些嵌套的邮件列表线程和一个酒吧中讨论

之间的想法变成现实......

PyPy开发团队很高兴宣布其第一个

公开发布一个完全可翻译的自包含Python

实现。 0.7版本展示了自0.6预览版本以来过去几个月我们的b $ b努力的结果

,这些都是由欧盟部分资助的:


- 我们的Python解释器上的整个程序类型推断

实现,完全转换为两个不同的机器级别目标:B和LLVM

- 使用引用计数或Boehm的翻译选择

垃圾收集器


- 有或没有线程翻译的能力支持


- 与CPython 2.4.1非常完整的语言级别合规性

什么是PyPy(约)?

- ----------------------------------------------


PyPy是一个麻省理工学院许可的研究导向的重新实现,用Python编写的Python本身,灵活且易于实验。它将自身转换为较低级别的b
语言。我们的目标是通过提供可以生成自定义Python版本的编译工具套件(b $ b)来定位各种各样的小型和大型平台。平台,内存和

线程模型将成为翻译的一部分

过程 - 而不是将低级细节编码为

语言实现本身。最终,动态

优化技术 - 作为另一种翻译实现

方面 - 应该能够抵御语言变化。


注意PyPy主要是一个研发项目

并不专注于获得生产就绪的
Python实现,尽管我们希望并期望它

明年某个时候成为该领域的可行竞争者。

从哪里开始?

---------------- -------------


入门:
http://codespeak.net/pypy/dist/pypy/...g-started.html


PyPy文档: http:// codespeak。 net / pypy / dist / pypy / doc /

PyPy主页: HTTP:// codesp eak.net/pypy/

0.7版本随附的解释器和对象模型实现可以自行运行并实现核心

CPython 2.4中Python的语言功能。但是,我们仍然不建议将PyPy用于除教育之外的其他任何事情,

播放或研究目的。


正在进行中工作和近期目标

---------------------------------


PyPy是在欧洲和美国大约15个编码冲刺期间开发的。它仍然是一个非常动态且逐步发展的项目,其中包括许多

一周的会议。你被邀请考虑参加2005年10月中旬在巴黎举行的下一次会议,我们打算计划b
$并计划进行更加激烈的项目阶段。 />
涉及构建JIT编译器并启用其他Python语言实现中没有的独特

功能。


PyPy是一项社区工作如果没有编码和反馈支持,那么从一开始就没有那么多b $ b就没那么多了。来自无数人的
。请随时提供反馈和

提出问题。


联系点: http://codespeak.net/pypy/dist/pypy/doc/contact.html


撰稿人名单:
http:/ /codespeak.net/pypy/dist/pypy/...ntributor.html


玩得开心,


the pypy团队,这里是部分快照

主要涉及的人:

Armin Rigo,Samuele Pedroni,

Holger Krekel ,Christian Tismer,

Carl Friedrich Bolz,Michael Hudson,

Eric van Riet Paap,Richard Emslie,

Anders Chrigstroem,Anders Lehmann,

Ludovic Aubry,Adrien Di Mascio,

Niklaus Haldimann,Jacob Hallen,

Bea期间,Laura Creighton,

还有很多贡献者...


PyPy的开发和活动是作为一个开源项目发生的,并且得到了一个财团的支持,该财团部分资金来自两年期欧盟IST研究基金。以下是该联盟的全部合作伙伴名单



Heinrich-Heine大学(德国),AB Strakt(瑞典)

merlinux GmbH(德国),tismerysoft GmbH(德国)

Logilab Paris(法国),DFKI GmbH(德国)

ChangeMaker(瑞典),Impara(德国)

pypy-0.7.0: first PyPy-generated Python Implementations
================================================== ============

What was once just an idea between a few people discussing
on some nested mailing list thread and in a pub became reality ...
the PyPy development team is happy to announce its first
public release of a fully translatable self contained Python
implementation. The 0.7 release showcases the results of our
efforts in the last few months since the 0.6 preview release
which have been partially funded by the European Union:

- whole program type inference on our Python Interpreter
implementation with full translation to two different
machine-level targets: C and LLVM

- a translation choice of using a refcounting or Boehm
garbage collectors

- the ability to translate with or without thread support

- very complete language-level compliancy with CPython 2.4.1
What is PyPy (about)?
------------------------------------------------

PyPy is a MIT-licensed research-oriented reimplementation of
Python written in Python itself, flexible and easy to
experiment with. It translates itself to lower level
languages. Our goals are to target a large variety of
platforms, small and large, by providing a compilation toolsuite
that can produce custom Python versions. Platform, Memory and
Threading models are to become aspects of the translation
process - as opposed to encoding low level details into a
language implementation itself. Eventually, dynamic
optimization techniques - implemented as another translation
aspect - should become robust against language changes.

Note that PyPy is mainly a research and development project
and does not by itself focus on getting a production-ready
Python implementation although we do hope and expect it to
become a viable contender in that area sometime next year.
Where to start?
-----------------------------

Getting started:
http://codespeak.net/pypy/dist/pypy/...g-started.html

PyPy Documentation: http://codespeak.net/pypy/dist/pypy/doc/

PyPy Homepage: http://codespeak.net/pypy/

The interpreter and object model implementations shipped with
the 0.7 version can run on their own and implement the core
language features of Python as of CPython 2.4. However, we still
do not recommend using PyPy for anything else than for education,
playing or research purposes.

Ongoing work and near term goals
---------------------------------

PyPy has been developed during approximately 15 coding sprints
across Europe and the US. It continues to be a very
dynamically and incrementally evolving project with many
one-week meetings to follow. You are invited to consider coming to
the next such meeting in Paris mid October 2005 where we intend to
plan and head for an even more intense phase of the project
involving building a JIT-Compiler and enabling unique
features not found in other Python language implementations.

PyPy has been a community effort from the start and it would
not have got that far without the coding and feedback support
from numerous people. Please feel free to give feedback and
raise questions.

contact points: http://codespeak.net/pypy/dist/pypy/doc/contact.html

contributor list:
http://codespeak.net/pypy/dist/pypy/...ntributor.html

have fun,

the pypy team, of which here is a partial snapshot
of mainly involved persons:

Armin Rigo, Samuele Pedroni,
Holger Krekel, Christian Tismer,
Carl Friedrich Bolz, Michael Hudson,
Eric van Riet Paap, Richard Emslie,
Anders Chrigstroem, Anders Lehmann,
Ludovic Aubry, Adrien Di Mascio,
Niklaus Haldimann, Jacob Hallen,
Bea During, Laura Creighton,
and many contributors ...

PyPy development and activities happen as an open source project
and with the support of a consortium partially funded by a two
year European Union IST research grant. Here is a list of
the full partners of that consortium:

Heinrich-Heine University (Germany), AB Strakt (Sweden)
merlinux GmbH (Germany), tismerysoft GmbH(Germany)
Logilab Paris (France), DFKI GmbH (Germany)
ChangeMaker (Sweden), Impara (Germany)

推荐答案

那太棒了!恭喜!

That''s great! Congratulations!


Carl Friedrich Bolz写道:

[[...好消息......]]


如果人们开始尝试使用他们的模块/代码来查看

,如果他们使用这个版本,以及他们是否同样可以翻译,这会有用吗

使用C / LLVM后端,或者你会说这太早了? (我更多

思考它提供真实世界的用例,希望

找到不起作用的东西 - 而不是其他任何东西)


无论哪种方式,这看起来都是一个伟大的里程碑 - 祝贺

整个团队。 (我记得PyPy对于是否甚至可以完成它是否感到怀疑!:-)


最好的问候,

Michael

Carl Friedrich Bolz wrote:
[[... great news ...]]

Would it be useful for people to start trying out their modules/code to see
if they work with this release, and whether they can likewise be translated
using the C/LLVM backends, or would you say this is too early? (I''m more
thinking in terms of it providing real world usecases in the hope of
finding things that don''t work - rather than anything else)

Either way, this looks like a great milestone - congratulations to the
entire team. (I remember PyPy being met with skepticism as to whether
it could even be done! :-)

Best Regards,
Michael


Michael Sparks< ms@cerenity.org>写道:
Michael Sparks <ms@cerenity.org> wrote:
人们开始尝试使用他们的模块/代码来查看
是否有用这个版本是否有用,以及它们是否同样可以被翻译使用C / LLVM后端,或者你会说这太早了? (我更多的是考虑提供现实世界的用例,希望找到不起作用的东西 - 而不是其他任何东西)


这不是它的工作原理。 Pypy没有将你的代码翻译成C / LLVM。

目前PyPy只能翻译一个非常简单的python子集

,称为RPython,它具有类似C语法的语法(但没有记忆

管理代码)。这是允许在

解释器代码中进行类型推断所必需的。


应用程序中的代码是应用程序代码,可以是你的任何内容。 b $ b想要,你可以尝试将它翻译成C / LLVM,但它不会那么好,因为注释器并不那么聪明。


Just In Time编译a-la-psyco计划在

pypy的1.0发布之前。

现在编译器/解析器也在应用程序级别运行意思是

它相当慢,因为它没有像其他的pypy那样翻译
(这相当于翻译的pypy的缓慢程度)

[当然只有在他们没有设法重写RPython中的

解析器/编译器时才会这样,我承认我不确定]


有关详细信息,请访问codespeak.net网站:)。


PyPy真正的优点是你可以轻松实现一个新的obj等等
空间并改变在python中完成的操作的语义。

编写一个可以跨多台b
计算机共享数据结构的Python解释器很难但可能。

已经实现了4个不同的对象空间,标准

一个,thunk one(这是一个懒惰的评估对象空间),

流程图对象空间和跟踪每个

操作的跟踪对象空间。

无论哪种方式,这看起来都是一个伟大的里程碑 - 祝贺
整个团队。 (我记得PyPy被怀疑是否甚至可以完成!: - )
Would it be useful for people to start trying out their modules/code to see
if they work with this release, and whether they can likewise be translated
using the C/LLVM backends, or would you say this is too early? (I''m more
thinking in terms of it providing real world usecases in the hope of
finding things that don''t work - rather than anything else)
This is not how it works. Pypy doesn''t translate your code to C/LLVM.
Currently PyPy can only translate a pretty simple subset of python
called RPython which has a very C-like syntax (but without memory
management code). This is needed to allow type inference inside the
interpreter code.

The code in your application is application code and can be whatever you
want, you may try to translate it to C/LLVM but it won''t be that good of
course because the annotator is not that intelligent.

Just In Time compilation a-la-psyco is planned before the 1.0 release of
pypy.
Right now also the compiler/parser run in application level which means
it is rather slow because it is not translated like the rest of pypy
(which accounts for quite a bit of the slowness of the translated pypy)
[this is of course only true if they didn''t manage to rewrite the
parser/compiler in RPython, which I admit I''m not sure]

More information is available on codespeak.net website :).

What''s really cool in PyPy is how easily you can implement a new object
space and change semantics of operations done in python.
Writing a Python interpreter that can share data structures across many
computers will be hard but possible.
There are already 4 different object spaces implemented, the standard
one, the thunk one (which is a lazy evaluation object space), the
flowgraph object space and the trace object space that traces each
operation done.
Either way, this looks like a great milestone - congratulations to the
entire team. (I remember PyPy being met with skepticism as to whether
it could even be done! :-)




确实。


-

Valentino Volonghi又名Dialtone

现在运行MacOSX 10.4

博客: http://vvolonghi.blogspot.com
http://weever.berlios.de


这篇关于发布PyPy 0.7.0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆