>>>>> "d" == dblack <dblack / candle.superlink.net> writes: d> Yes, but now that I see the word "shadowing" I realize it won't happen d> :-) I'm just trying to find something to suggest instead of "local" or d> "let", without much success. use "export" rather than "import", i.e. 1.times do |x| a = 2 end a # undefined local variable `a' 1.times do |x| # explicitly export a a = 2 end a # ===> 2 but you don't solve the problem : all persons seems to see |x| as a declaration when it's just an assignement. Guy Decoux