[pypy-dev] Hey friends, I'm SOOOO HAPPPYYY

Christian Tismer tismer at stackless.com
Sun Mar 26 23:58:35 CEST 2006


[re-sent because the original had too many receivers =]

Dear friends,

this is just a greeting and short notice to a few of my
friends. I am just so happy and relaxed and resolved,
so I have to tell you.

Summary:
--------

PyPy is now able to compile efficient extension modules!

Details:
--------

I'm going to write a larger article about this.

Credentials:
------------

This is a spin-off of the PyPy project.
See http://www.codespeak.net/pypy

All credentials must go to the group. I only found a way
to make it accessible and usable in a pre-mature state.
I'm just a member of this team, and I (ab)used the results
of the project, to create something what every serious
Python extension writer will love.

What is it good for?
--------------------

You can write algorithms in an almost Pythonic language
instead of using C. Your code will be translated into
a C Python extension module of very high efficiency.

Consequences
------------

You will want to stop coding any C extensions by hand
at all. Instead, you will produce series of extensions
automagically and rank them by their performance,
and then choose what fits your needs the best.

Availability
------------

The module is not really available right now at all.
The proof-of-concept implementation does exist as a
test case, see
http://codespeak.net:/svn/pypy/dist/pypy/translator/c/test/test_wrapping.py

I'm going to do some refinements and optimizations quickly,
and there will be a command-line tool that will produce
extensions from a simple init script. I want to name this
tool "raymond", after my good friend Raymond Hettinger
if he doesn't mind.

Sponsorship
-----------

I'd like to mention that this work was done on behalf of
and inspired by EWT LLC, the company I'm currently
consulting for. They are interested in using these short-term
PyPy spin-offs to produce ultra-fast specialized modules,
and they supported my in every possible way.

Scope
-----

This relatively small addition should be perceived
as an interim replacement for the final JIT-accelerated
PyPy implementation which we all wish to instantiate
at some time.

Until that happens, I think we can give the people
a very nice tool to improve their productivity.

Shortcomings
------------

Right now, there is some level of indirection, since
I use PyCObject to implement the wrappers. This will
change pretty soon.

It is not planned to build chamaeleon objects, which are
really both CPython and RPython objects. This would
be a slowdown for typical applications.
The real solution is to have objects with a single level
of indirection. I will post an article about the layout of
this during the weekend.

Conclusion, again:
------------------

I am so happy!

With this result, and with PyPy and its wonderful team.

your's sincerely -- chris
-- 
Christian Tismer             :^)   <mailto:tismer at stackless.com>
tismerysoft GmbH             :     Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9A     :    *Starship* http://starship.python.net/
14109 Berlin                 :     PGP key -> http://wwwkeys.pgp.net/
work +49 30 802 86 56  mobile +49 173 24 18 776  fax +49 30 80 90 57 05
PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
      whom do you want to sponsor today?   http://www.stackless.com/





More information about the Pypy-dev mailing list