[pypy-dev] builtin refactoring branch

holger krekel hpk at trillke.net
Thu Jul 10 16:01:41 CEST 2003


Hello PyPy,

in the last days i experimentally tried some approaches to "fixing"
problems regarding the crossing of app-level/interpreter-level boundary.  
While Armin already posted how we'd probably like to have the situation
(easily intermingling app-level and interpreter-level without _app files)
there are some concepts to clarify.  

I think it makes sense to try to clarify the issues by focusing
on "builtins" first because they imply interesting cases:

- interpreter-level functions are exposed to app-space

- some builtins are implemented at application level 
  and are visible at application-level (currently: map, range ...)
  I guess we want to be able to write the helpers in as much as
  "allowed" plain python.  Where Annspace defines "allowed". 
  (note that AnnSpace must understand exactly those builtins/app-space 
  stuff like decode_code_arguments that the interpreter uses itself to
  initialize and to operate).

- we may want to call builtins - defined at whatever level - directly 
  and uniformly from interpreter-level without having to know the
  distinction on the caller side. 

The latest commits to the builtinrefactor branch made it possible to 
define "xrange" as an app-level class.  This idea was a result of some 
IRC-discussions with Moshez (thanks!), Michael and some others. 

For more detailed info, please read the branch-commit info 
because i have to leave now... Ah, yes, if you are interested 
you can try the code out by doing

svn switch http://codespeak.net/svn/pypy/branch/builtinrefactor/pypy 

in your 'pypy' directory (be careful if you have mods in your tree).

cheers,

    holger


More information about the Pypy-dev mailing list