From: "Daniel Schüle" Date: 2005-11-10T05:07:12+09:00 Subject: to which object does the global scope belong? x = RubyNG.each {|user| user.hello }.find {|user| user.knows_answer? } mond:/pool/PROG/ruby # irb irb(main):001:0> irb(main):002:0* irb(main):003:0* irb(main):004:0* def foobar;"foobar";end => nil irb(main):005:0> self.foobar => "foobar" irb(main):006:0> [].foobar => "foobar" irb(main):007:0> {}.foobar => "foobar" irb(main):008:0> 1.foobar => "foobar" irb(main):009:0> 1.0.foobar => "foobar" irb(main):010:0> Object.foobar => "foobar" irb(main):011:0> Kernel.foobar => "foobar" irb(main):012:0> module M;end => nil irb(main):013:0> M.foobar => "foobar" irb(main):014:0> class X;end => nil irb(main):015:0> X.foobar => "foobar" irb(main):016:0> x=X.new => # irb(main):017:0> x.foobar => "foobar" irb(main):018:0> I was wondering in what object scope is the function foobar defined? I supposed it would be in irb(main):037:0> Kernel.singleton_methods.grep /foo/ => [] irb(main):038:0> Object.singleton_methods.grep /foo/ => [] irb(main):039:0> but nothing x.each {|user| user.thanks } ;)