Does Python really follow its philosophy of "Readability counts"?
Duncan Booth
duncan.booth at invalid.invalid
Wed Jan 21 09:31:46 EST 2009
Terry Reedy <tjreedy at udel.edu> wrote:
> Delaney, Timothy (Tim) wrote:
>> Terry Reedy wrote:
>>
>>>> The compiled code differs.
>>> I *strongly* doubt that. Properties are designed to be transparent
to
>>> user code that access atrributes through the usual dotted name
>>> notation precisely so that class code can be changed from
>>> x = ob
>>> to
>>> x = property(get_x, set_x, del_x)
>>> without changing user code.
>>
>> He was talking about C# with that statement. In C#, the compiled code
>> differs depending on whether you use a property or an attribute. Or
at
>> least that's how I interpreted it.
>
> Checking back, I see now that Luis Z. went from Python
> "It boggles me when I see python code with properties that only set
and
> get the attribute, or even worse, getters and setters for that
> purpose. " to C#, and that Duncan was seemingly responding to the C#
> part. If C# is like that, how inconvenient.
It's a long enough thread that I can't see anyone faulting you for
falling asleep half way through my post.
C# forces you to spend a lot of time writing trivial getters and
setters. They've 'improved' it in the more recent versions: you no
longer have to write any body at all for a trivial getter or setter and
the compiler will generate one for you provided you have declared the
property with a leading capital letter and a private attribute with the
same name but a lowercase letter. Ick.
>
>> You are of course correct as to how Python does it.
>
> I guess I am spoiled ;-).
>
That's why we're all here.
--
Duncan Booth http://kupuguy.blogspot.com
More information about the Python-list
mailing list