2009/10/6 Philip Guo <[email protected]>: > As a general rule, should I be trying to implement my PyPy extensions as new > object spaces (e.g., like the thunk object space)? > > For the first draft of my hacked interpreter, I just made changes all > throughout the core PyPy interpreter codebase, which worked fine when I was > running in interpreted mode (py.py), but as soon as I tried to translate to > create pypy-c, understandable all hell broke loose and translation > mysteriously failed. I'm pretty sure that some of my hacks screwed > something up.
Well, no matter where you implement your changes, it will probably not translate. :) > > The thing is, I want to hack some changes to affect control flow, and I > don't know how to do that with an object space. In particular, I want to > alter control flow so that some function calls execute normally but other > ones don't actually execute the function call but rather use a memoized > return value that I previously saved. It's fairly straightforward to do by > hacking PyPy interpreter directly, but I can't think of an easy way to do it > with a separate object space. Usually control changes have to be implemented in the interpreter since they consistute a change in the language. The objspace is primarily useful for changing object behavior. > > Any tips would be greatly appreciated. > > Thanks! > Philip -- Regards, Benjamin _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
