From: 7stud -- Date: 2007-11-26T14:43:36+09:00 Subject: Re: module_eval is an instance method? Paul McMahon wrote: > module_eval is a instance method of Module. > > It is available to anything that is a Module. > > irb(main):001:0> Object.is_a?(Module) > => true > irb(main):002:0> String.is_a?(Module) > => true > irb(main):003:0> self.is_a?(Module) > => false Ok, how do you explain this output: def meth1 Object.module_eval('num') end num = 10 Object.module_eval('num') -->10 meth1 --> `module_eval': undefined local variable or method `num' for Object:Class (NameError) According to pickaxe2, p. 393: "When we define methods, we're actually creating (private) instance methods for class Object." What about top level variables? -- Posted via http://www.ruby-forum.com/.