Two similar sentences have different behaviour. Is it ok?
Compare:
1.9.3p374 :001 > a = 123 unless defined? a
=> nil
1.9.3p374 :002 > a
=> nil
but…
1.9.3p374 :003 > unless defined? b
1.9.3p374 :004?> b = 123
1.9.3p374 :005?> end
=> 123
1.9.3p374 :006 > b
=> 123