title: What does "shadowing" mean in Ruby?
body: <p>If I do the following with warnings turned on under Ruby 1.9:</p>
  
  <pre><code>$VERBOSE = true
  x = 42
  5.times{|x| puts x}
  </code></pre>
  
  <p>I get </p>
  
  <pre><code>warning: shadowing outer local variable - x
  </code></pre>
  
  <p>Presumably it's to do with using x as a block parameter as well as a variable outside of the block, but what does "shadowing" mean?</p>