From: Tadashi Saito Date: 2008-07-15T00:14:50+09:00 Subject: [ruby-dev:35488] Re: [ruby-core:17739] [Ruby 1.9 - Bug #256] (Open) defined?(Gem::RubyGemsVersion) behaves strange 斎藤と申します。 On Mon, 14 Jul 2008 23:31:13 +0900 Kazuhiro NISHIYAMA wrote: > #256には書き忘れてしまったのですが、require 'rubygems'しても > 同じなので、rubygemsの方が悪いのではないかと思います。 どこが悪いのでしょうか。 defined? の後ろの式は、評価されません。 $ ruby1.8 -e 'p super' -e:1: super called outside of method (NoMethodError) $ ruby1.8 -e 'p defined? super' nil 2度目の実行で、例外は上がっていません。 このように、初めて評価されてから定義(ロード)されるのが On Mon, 14 Jul 2008 23:14:42 +0900 wanabe wrote: > RubyGems は const_missing 等で遅延ロードされるようなので ということではないでしょうか。 -- 斎藤ただし