473,739 Members | 3,708 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

pypy-0.9.0: stackless, new extension compiler

The PyPy development team has been busy working and we've now packaged
our latest improvements, completed work and new experiments as
version 0.9.0, our fourth public release.

The highlights of this fourth release of PyPy are:

**implementatio n of "stackless" features**
We now support the larger part of the interface of the original
Stackless Python -- see http://www.stackless.com for more. A
significant part of this is the pickling and unpickling of a running

These features, especially the pickling, can be considered to be a
"technology preview" -- they work, but for example the error handling
is a little patchy in places.

The "extension compiler" is a new way of writing a C extension for
CPython and PyPy at the same time. For more information, see its
documentation: http://codespeak.net/pypy/dist/pypy/...tcompiler.html

Most useful in combination with the ext-compiler is the fact that our
translation framework can translate code that uses the
standard-in-Python-2.5 ctypes module. See its documentation for more:

**framework GCs**
PyPy's interpreter can now be compiled to use a garbage collector
written in RPython. This added control over PyPy's execution makes the
implementation of new and interesting features possible, apart from
being a significant achievement in its own right.

**__del__/weakref/__subclasses__* *
The PyPy interpreter's compatibility with CPython continues improves:
now we support __del__ methods, the __subclasses__ method on types and
weak references. We now pass around 95% of CPython's core tests.

**logic space preview**
This release contains the first version of the logic object space,
which will add logical variables to Python. See its docs for more:

**high level backends preview**
This release contains the first versions of new backends targeting high
level languages such as Squeak and .NET/CLI and updated versions of the
JavaScript and Common Lisp backends. They can't compile the PyPy
interpreter yet, but they're getting there...

**bugfixes, better performance**
As you would expect, performance continues to improve and bugs continue
to be fixed. The performance of the translated PyPy interpreter is
2.5-3x times faster than 0.8 (on richards and pystone), and is now
stable enough to be able to run CPython's test suite to the end.

**testing refinements**
py.test, our testing tool, now has preliminary support for doctests.
We now run all our tests every night, and you can see the summary at:

What is PyPy (about)?

PyPy is a MIT-licensed research-oriented reimplementatio n 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
the 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.

PyPy is partially funded as a research project under the European
Union's IST programme.

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.9
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

Ongoing work and near term goals

The Just-in-Time compiler and other performance improvements will be one of
the main topics of the next few months' work, along with finishing the
logic object space.

Project Details

PyPy has been developed during approximately 20 coding sprints across
Europe and the US. It continues to be a very dynamically and
incrementally evolving project with many of these one-week workshops
to follow.

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

have fun,

the pypy team, (Armin Rigo, Samuele Pedroni,
Holger Krekel, Christian Tismer,
Carl Friedrich Bolz, Michael Hudson,
and many others: http://codespeak.net/pypy/dist/pypy/...ntributor.html)

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. The full partners of that
consortium are:

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

Monte Carlo sampling is no way to understand code.
-- Gordon McMillan, comp.lang.pytho n
Jun 25 '06 #1
2 1882
I've been away from Usenet for a while but this is the most interesting
stuff I've seen here in ages. Way cool.

Jun 25 '06 #2
Hi all!

Michael Hudson wrote:
The PyPy development team has been busy working and we've now packaged
our latest improvements, completed work and new experiments as
version 0.9.0, our fourth public release.

Unfortunately the download links for the release tarballs did not work
until very recently. They are now working though. You can download the
0.9 release of PyPy under:


For detailed notes about how to get started into the world of PyPy see


Sorry for the fuss and cheers,

Carl Friedrich Bolz

Jun 26 '06 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

by: holger krekel | last post by:
Hi Pythonistas and interested developers, PyPy, the python-in-python implementation, is steadily moving on. The next coding sprint will take place in Vilnius, Lithunia, from 15th to 23rd of November, 2004 and is organized by the nice Programmers of Vilnius (POV) company. See http://codespeak.net/pypy/index.cgi?doc for more
by: holger krekel | last post by:
Hi again, On Fri, May 20, 2005 at 23:38 +0200, holger krekel wrote: > The PyPy 0.6 release > -------------------- has already been superseded by the PyPy 0.6.1 bug-fix release. We are temporarily not having access to that time machine and thus have to fix things the old way, unfortunately. But we are working on improving this situation.
by: Armin Rigo | last post by:
Post-EuroPython 2005 PyPy Sprint 1st - 7th July 2005 ====================================================== The next PyPy sprint is scheduled right after EuroPython 2005 in Gothenborg, Sweden. Its main focus is translation to lower level backends but there are also other possible topics. We'll give newcomer-friendly introductions. To learn more about the new PyPy Python-in-Python implementation look here: http://codespeak.net/pypy
by: Carl Friedrich Bolz | last post by:
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...
by: Michael Hudson | last post by:
Introduction ============ This is the second of what will hopefully be many summaries of what's been going on in the world of PyPy in the last week. I'd still like to remind people that when something worth summarizing happens to recommend if for "This Week in PyPy" as mentioned on: http://codespeak.net/pypy/dist/pypy/doc/weekly/
by: Ray | last post by:
Hello! I've been reading about PyPy, but there are some things that I don't understand about it. I hope I can get some enlightenment in this newsgroup :) First, the intro: <excerpt> "The PyPy project aims at producing a flexible and fast Python
by: Carl Friedrich Bolz | last post by:
Last chance to join the Summer of PyPy! ======================================= Hopefully by now you have heard of the "Summer of PyPy", our program for funding the expenses of attending a sprint for students. If not, you've just read the essence of the idea :-) However, the PyPy EU funding period is drawing to an end and there is now only one sprint left where we can sponsor the travel costs of interested students within our...
by: holger krekel | last post by:
========================================================================= PyPy Trillke "EU and beyond!" sprints (25-28th Feb, 1-5th March 2006) ========================================================================= ... image:: http://www.trillke.net/images/HausPanorama0304_113kb.jpg Some two years and some thousands of commits later, the EU project period of the PyPy (http://codespeak.net/pypy) project is about to close ... and a...
by: WChunming | last post by:
Hi, I am a newbie to python and pypy. I choose to read pypy source code to learn about python and python library. But when I try to run pypy in debug mode in pydev, I got the following problem: /// error message begin pydev debugger Traceback (most recent call last): File "F:\TOOLS\eclipse\plugins\org.python.pydev.debug_1.3.4\pysrc \pydevd.py", line 754, in <module> debugger.run(setup, None, None)
by: Carl Friedrich Bolz | last post by:
===================================================================== PyPy Berlin Sprint (17-22nd May 2008) ===================================================================== The next PyPy sprint will be in the crashed `c-base space station`_, Berlin, Germany, Earth, Solar System. This is a fully public sprint: newcomers (from all planets) and topics other than those proposed below are welcome. ... _`c-base space station`:...
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.