[pypy-dev] Splitting RPython and PyPy

Ronan Lamy ronan.lamy at gmail.com
Sun Oct 21 21:28:50 CEST 2012


Le dimanche 21 octobre 2012 à 14:03 +0200, Maciej Fijalkowski a écrit :
> Hi
> 
> Due to impressive work by Ronan Lamy, we're now able to split RPython
> and PyPy. Note that the fact of splitting this is not up to
> discussion, however, how we go about it is. During discussions with
> Armin we came up with the following plan:
> 
> * We make a copy of pypy repo called rpython. it'll still live under
> pypy team on bitbucket.
> 
> * We'll rename toplevel package of pypy to rpython, for the rpython
> part. Since we need to change ALL THE IMPORTS, we can do refactorings
> of imports now. Proposed changes:
> 
>   * to be moved from pypy to rpython: annotation, translator, rlib
>   * pypy.config must be split somehow, same for tool, bin and for doc
>   * move pypy.rpython namespace to rpython.rtyper
>   * move pypy.rpython.lltypesystem to rpython.lltypesystem, same for ootype
>   * pypy.rpython.memory becomes rpython.gc
>   * pypy.objspace.flow becomes rpython.flowspace

I think that the changes should go deeper. I see model.py and
operation.py as defining the flowgraph-based intermediate representation
on which the rest of the tool chain operates. In contrast, the rest of
pypy.objspace.flow only deals with translating Python callables to this
IR. So I would suggest to move model.py and operation.py to
rpython.flowgraph, and to also move there the various generic flow graph
manipulation functions that are currently scattered around (e.g. in
pypy.translator.backendopt.ssa).

>   * testrunner and dotviewer can become independent packages

+1 (well, I don't really have an opinion on testrunner). IMO, this
implies that FunctionGraph should lose its view/show method.

>   * _pytest stays with pypy, however for rpython you can use whatever
> version of py.test you have installed. rpython test suite should also
> however be runnable under current contents of _pytest

Why the last stipulation? I would think that fishing out _pytest from
pypy would require significant acrobatics once the repos are separated.
> 
> * RPython will come with setup.py and be a "normal" python package
> 
> Cheers,
> fijal & armin
> _______________________________________________
> pypy-dev mailing list
> pypy-dev at python.org
> http://mail.python.org/mailman/listinfo/pypy-dev




More information about the pypy-dev mailing list