Why is it that 'a' is nil and not undefined? (i would expect:
undefined local variable or method `a' for main:Object (NameError)
)
Thanks in advance,
M.
"if" doesn't introduce a new scope, similar to "switch" in C et. al. So "a"
and "b" reside really in the same scope and the definition in the true
clause is sufficient to make "a" defined. The assignment need not be
executed.