[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/)