The current description of the reload() function in the
Library Reference Manual, Release 2.3.3, Section 2.1
provides lots of detail, but not enough basic
explanation. As a result, there is lots of confusion on
the use of reload, in the mailing lists, and even in texts
on Python. The attached PDF file shows the text from
the manual, with my suggested edits highlighted in
yellow.
The main change is to add a much more detailed
description of what happens when a module is reloaded.
Reloads were always a mystery to me, until I started
thinking about what is happening to the namespaces.
A minor edit: I replaced "re-parse and re-initialize"
with "re-compile and reload", since I think many users
won't know exactly what the former terms mean in this
context. I'm not very familiar with the documentation,
so I don't know if the former terms might be preferred,
so as to be consistent with other documents.
See
http://ece.arizona.edu/~edatools/Python/Reload.htm for
an introductory description of reload, with examples and
exercises and a few paragraphs on why reload can never
work the way many users expect it to.
-- Dave
|