Если я делаю следующее с предупреждениями, включенными под Ruby 1.9:
$VERBOSE = true
x = 42
5.times{|x| puts x}
Я получаю
warning: shadowing outer local variable - x
Предположительно, это связано с использованием x в качестве параметра блока, а также переменной вне блока, но что означает "затенение"?