[Python-Dev] closure semantics
Walter Dörwald
walter at livinglogic.de
Tue Oct 21 19:38:55 EDT 2003
Guido van Rossum wrote:
>>Why not make local variables attributes of the function, i.e.
>>replace:
>>
>> def inner():
>> global x in outer
>> x = 42
>>
>>with:
>>
>> def inner():
>> outer.x = 42
>
>
> Because this already means something! outer.x refers to the attribute
> x of function outer. That's quite different than local variable x of
> the most recent invocation of outer on the current thread's call stack!
I guess unifying them both (somewhat like the instance attribute
lookup rule) won't work.
>>Global variables could then be assigned via:
>> global.x = 42
>
>
> This has a tiny bit of appeal, but not enough to bother.
Bye,
Walter Dörwald
More information about the Python-Dev
mailing list