Local Variable Scopes The most regretting behavior in Ruby def foo a = nil ary.each do |b| c = b # b and c are block local a = b # while a is not end end