CONSTRUCT - Adding Functionality to the Overall System

Ilias Lazaridis ilias at lazaridis.com
Tue Sep 19 00:22:22 EDT 2006


Calvin Spealman wrote:
> On 18 Sep 2006 20:23:03 -0700, Ilias Lazaridis <ilias at lazaridis.com> wrote:
> > Steve Holden wrote:
> > > Ilias Lazaridis wrote:
> > ...
> > > > http://www-128.ibm.com/developerworks/linux/library/l-pymeta.html
> > > >
> > > > I am not so much interested in old-style, as is start production with
> > > > python 2.4 (possibly even with python 2.5).
> > >
> > > The fact remains that you won't be able to affect the built-in classes
> > > such as int and str - they are hard-coded in C (for CPython, at least),
> > > and so their metaclass is also implied and cannot be changed.
> >
> > ...except in C.
> >
> > I assume the "root class" should be available/changeable in "C", too.
> >
> > Do I have to change the sources directly, or does python provide
> > "C-level-extension/modication" mechanisms, which can be applied to
> > core-level classes, too?
> >
> > Is the Python Object Model documented anywhere in a diagram, something
> > similar to this?:
> >
> > http://case.lazaridis.com/wiki/RubyObjectModel
>
> What could you possibly want to do this for so badly that you would
> shun all alternatives and even resort to hacking up the runtime at the
> C-level to redefine core types in non-standard and unpredictable
> ways?! Seriously, please give a good reason for every doing this. I
> can't imagine there is any way it would justify all this in the face
> of just looking for an alternative. You aren't trying to use python,
> at this point, you are trying to fork it.

http://case.lazaridis.com/wiki/Please#OffTopicPosts

.




More information about the Python-list mailing list