title: Recursive module import and reload
body: <p>Can someone explain why executing the following code:</p>
  
  <p>file "<strong>hello.py</strong>":</p>
  
  <pre><code>import hello
  print "hello"
  hello = reload(hello)
  </code></pre>
  
  <p>executing as <code>python hello.py</code> prints the following?</p>
  
  <pre><code>hello
  hello
  hello
  hello
  </code></pre>
  
  <p>Why 4 times? I know that when a module is already imported it's not imported again, but reload forces to reload a module even if it's already loaded. I'd have expected as a result unlimit 'hello' prints.</p>
  
  <p>What has to happen so <code>reload</code> won't reload a module?</p>