defined?
Ruby 1.8.7 でのこと。
CONST_HOGE = false p defined? CONST_HOGE && CONST_HOGE # => "expression" p defined?(CONST_HOGE) && CONST_HOGE # => false p defined? CONST_PIYO && CONST_PIYO # => nil p defined?(CONST_PIYO) && CONST_PIYO # => nil
下三つの動作は理解できるんだけど、一番上の動作が理解できない。false が返るのかと思っていたが、そうでもないらしい。