On 11/04/2008, Dave Thomas <[EMAIL PROTECTED]> wrote:
> On Apr 11, 2008, at 12:14 AM, Arie Kusuma Atmaja wrote:
>
> > I tested it using Ruby 1.8.6 patch 111 and also Ruby 1.9.0 (revision
> 15968).
> >
> > var = nil if false
> > var.nil? #=> true
> >
>
> Ruby sees you have a local variable called 'var'. It hasn't been given a
> value, and so is nil.
Ok, I got it, thanks Dave.
m:x arie$ irb19
irb(main):001:0> a = 1
=> 1
irb(main):002:0> a
=> 1
irb(main):003:0> a = nil if false
=> nil
irb(main):004:0> exit
m:x arie$ irb19
irb(main):001:0> a = nil if false
=> nil
irb(main):002:0> a
=> nil
irb(main):003:0> exit
m:x arie$ irb19
irb(main):001:0> a
NameError: undefined local variable or method `a' for main:Object
from (irb):1
from /opt/local/ruby19/bin/irb19:12:in `<main>'
irb(main):002:0> a = 'nothing' if false
=> nil
irb(main):003:0> a
=> nil
irb(main):004:0> exit
> Dave
--
blog: http://tinyurl.com/2bjgvn,
ruby: http://www.ruby-lang.org/id/about
"Developer Time is expensive...
Servers are cheap...", Ezra Zygmuntowicz - Merb