[Python-Dev] LOAD_NAME & classes
Guido van Rossum
guido@python.org
Wed, 24 Apr 2002 00:28:43 -0400
> > def f():
> > print x # user thinks this should print the global
> > # 2000 lines of unrelated code
> > for x in "some sequence": # doesn't realize this overrides x
> > do_something_with(x)
>
> Perhaps a warning could be issued if the first reference
> to a local textually precedes the first assignment to it?
> Would that help catch things like this, without complaining
> about too much existing code?
Absolutely, and I believe that's what PyChecker is doing. Getting it
added to Python's own compiler is tricky though -- maybe we should put
off all such enhancements until Jeremy's new AST-based compiler is
finished.
--Guido van Rossum (home page: http://www.python.org/~guido/)