[pypy-dev] website update / pypy developments
holger krekel
hpk at trillke.net
Sun Jun 29 00:31:27 CEST 2003
Hi PyPy,
just updated the website
http://codespeak.net/pypy
with some information about what happened at the PyPy-Sprint in Louvain-La-Neuve
before EuroPython and at the conference itself. We got quite some attention at the
EuroPython 2003 conference where Armin Rigo gave a pygame-based talk and Guido van
Rossum was repeatedly seen hacking on PyPy. In his keynote he presented
PyPy as a "very ambitious project", adding "It's just fun to work on it".
OTOH, everyone was making fun of the fact that PyPy runs 20000 times slower
than CPython :-)
To bring everybody who is interested up-to-date with recent developments and
discussions i am giving a bit of an overview on current developments.
- the interpreter is now in pretty good shape. It works nicely with
our three object spaces:
Trivial dispatches object operations quite directly CPython objects.
Standard implements the standard python type system (and methods)
including Generators, __new__ methods and
metaclasses.
Annotation implements "abstract interpretation" which heads
for inferencing types for function parameters
and return values of a complete python program.
this space will form the basis of the soon-to-come
code-generator.
which doesn't mean that there is not lots of refactoring and
improvements on the current code base to do.
- we decided to put our evolving documentation into the subversion
respository instead of the wiki. This allows for more consistent
documents and notifications about changes, versioning etc.
Anna has done quite some work in that area. We are using the
RestructeredText text format which is rendered into html
on the codespeak server whenever documentation changes.
- Laura is going forward to present PyPy at the OSCON 2003 and she
together with help from other developers improved the paper.
IIUC the paper should be transformed into ReST and further
improved (i am somewhat starting to do that).
- we discussed going for EU-funding. The general oppinion was
that the current Call for Proposals fits the possible targets
of PyPy pretty well. But going for EU-funding is by far a simple
task. We have already talked to some companies and are also looking
for research institutions that would want to participate in a
big EU-Project. After some discussions especially with Armin
i now think that we should promote as a goal to
dynamically tie into/adapt arbritrary C-Libraries and
operation system calls.
The latter would basically mean that you could use Python directly to
drive your favourite OS. Think rapidly specializing for whatever
embedded device without even a libc and doing that with 99% of the
code beeing written in Python.
However, we only have three month to fullfill the EU-funding
conditions. If we want to involve larger companies then we have
to be very quick because large companies often take month to
sign contracts.
We are grateful for any hint or person you can recommend in order
to support us with matching the EU requirements. In return, we can easily
help you to envision usages of PyPy for your company or research
institution :-)
- the EU-funding will probably make it necessary to form some body
representing the pypy developers among companies and researchers.
The current idea is to setup a "pypy foundation" or even better
"py fundation" which brings together three driving forces:
Python, Fun & Funding. The latest date to found such an
organization will be the next sprint (oh dear) ...
- the next PyPy sprint will probably take place in Berlin
end of september 2003. It's focus will probably be to emit
C-Code in one way or another. After long discussions Samuele,
Armin and me think that it's a good idea to target Pyrex as
the first "emitted code" language. It has two advantages:
- Pyrex handles garbage collection aka hairy details
of refcounting and is a nice language to generate :-)
- generating runnable CPython modules allows early (and faster!)
testing. Basically we want to be able to import pypy as an
extension module into CPython *taking over* interpretation
of byte codes.
- the test framework was improved further but needs more work in various
areas. Michael and me even considered rewriting the unittest module alltogether
because we need a fine-grained flexibilty regarding object spaces.
Something like a test-coverage tool that tells us which code pathes in
our programs are not tested. And I'd like a webpage which reports which
revision broke which tests and some other nice reports (a nicely
rendered commit-log for starters).
- we currently have around 10000 lines of code (LOC) and 4 KLOC of tests.
it is too early to compare these LOC to CPython's but it's
nevertheless an interesting number.
so far for now.
have fun,
holger
More information about the Pypy-dev
mailing list