Nested scopes resolution -- you can breathe again!
rturpin at do.not.use
Sat Feb 24 18:06:09 CET 2001
Fri, 23 Feb 2001 09:01:19 -0800, Russell E. Owen
<owen at astrono.spamwashington.emu> pisze:
>> I suggested .. scaling back the proposal to allow it
>> to be simpler and more regular, for example have a
>> keyword or other explicit notation to say "this
>> variable is not in local scope".
The best argument for this is that it is more EXPLICIT.
Currently, the "global" keyword is required to set a
variable outside local scope. Simple reference, though,
is automatic. This is consistent with automatic
declaration, though in both cases, it risks program
errors. I suspect an option that requires explicit
declaration is one of the more frequent requests by
Marcin 'Qrczak' Kowalczyk wrote:
> I would certainly not call it simpler. Maybe for
> the language implementor, but not for the programmer,
> which must search the expression for its free variables
> to list them at the top, obscuring the program.
When a programmer writes the variable "x," they had
better know, in that context, to what it refers. If
they don't, there is pretty low chance that the code
will work. And far from obscuring the intent, perhaps
the SINGLE, BEST practice a programmer can employ, to
help those who come later understand their work, is
to put a manifest of all variables at the top of each
function, class, and module.
More information about the Python-list