[Python-Dev] LOAD_NAME & classes (original) (raw)

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 > dosomethingwith(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/)