[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

AltStyle によって変換されたページ (->オリジナル) /