On 2005 Jan 05, at 04:42, Barry Warsaw wrote:

On Tue, 2005-01-04 at 18:01, Jack Jansen wrote:

But I'm more worried about losing the other information in an unbound
method, specifically im_class. I would guess that info is useful to
class browsers and such, or are there other ways to get at that?

That would be my worry too. OTOH, we have function attributes now, so
why couldn't we just stuff the class on the function's im_class
attribute? Who'd be the wiser? (Could the same be done for im_self and
im_func for backwards compatibility?)

Hmmm, seems to me we'd need copies of the function object for this purpose:


def f(*a): pass
class C(object): pass
class D(object): pass
C.f = D.f = f

If now we want C.f.im_class to differ from D.f.im_class then we need f to get copied implicitly when it's assigned to C.f (or, of course, when C.f is accessed... but THAT might be substantial overhead). OK, I guess, as long as we don't expect any further attribute setting on f to affect C.f or D.f (and I don't know of any real use case where that would be needed).


Alex

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to