Why less emphasis on private data?
Steve Holden
steve at holdenweb.com
Mon Feb 5 08:31:51 EST 2007
Paul Boddie wrote:
> Paul Rubin wrote:
>> Right, the problem is if those methods start changing the "private"
>> variable. I should have been more explicit about that.
>>
>> class A:
>> def __init__(self):
>> self.__x = 3
>> def foo(self):
>> return self.__x
>>
>> class B(A): pass
>>
>> class A(B):
>> def bar(self):
>> self.__x = 5 # clobbers private variable of earlier class named A
>
> Has this ever been reported as a bug in Python? I could imagine more
> sophisticated "name mangling": something to do with the identity of the
> class might be sufficient, although that would make the tolerated
> "subversive" access to private attributes rather difficult.
>
> Paul
>
It would also force the mangling to take place at run-time, which would
probably affect efficiently pretty adversely (thinks: should really
check that mangling is a static mechanism before posting this).
regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
Blog of Note: http://holdenweb.blogspot.com
See you at PyCon? http://us.pycon.org/TX2007
More information about the Python-list
mailing list