Frederick Cheung wrote: > Consider this code > > module Foo > end > > def do_stuff_to_foo(&block) > Foo.module_eval &block > end > > do_stuff_to_foo {def greeting; 'hello'; end} > > If you paste this into irb on 1.9 (r14600, compiled a few minutes ago) > the greeting method is not added to Foo, but to the top level. > On 1.8 it's added to Foo, as I would expect. even more strange, this works as expected: module Foo end Foo.module_eval { def greeting; 'hello'; end } Foo.instance_methods # => [:greeting] [murphy]