interesting. in ruby:
ra:~$ irb
irb(main):001:0> defined? a
=> nil
irb(main):002:0> defined? b
=> nil
irb(main):003:0> a = b
NameError: undefined local variable or method `b' for main:Object
from (irb):3
irb(main):004:0> a
=> nil
irb(main):005:0> b
NameError: undefined local variable or method `b' for main:Object
from (irb):5
irb(main):006:0> defined? a
=> "local-variable"
irb(main):007:0>
'a' gets defined.