From: Seb Clediere Date: 2003-05-30T21:49:40+09:00 Subject: local variable and local variable in block behave differently Dear Rubyists, I am sligthly surprised by this behaviour: if false b = "" else 1.times { b = "b" } end puts defined? b # => local-variable puts b # => b 1.times do if false a = "" else 1.times { a = "a" } end puts defined? a # => local-variable(in-block) puts a # => nil end Any reason? Thanks Seb.