まつもと ゆきひろです

In message "Re: [ruby-dev:36969] [Fw: Ruby question about irb]"
    on Tue, 28 Oct 2008 13:20:35 +0900, keiju / ishitsuka.com (Keiju ISHITSUKA) writes:

|  eval("def foo; end", binding)
|  
|したとき, fooがpublicなのかprivateなのかが, ruby1.8系とruby1.9系とで違っ
|ていて,
|
|  1.8系では, public
|  1.9系では, private
|
|になります. これって, お互いに仕様が異なるってことです? それとも, ど
|ちらかのバグなんです? 

仕様が異なります。1.8ではトップレベルかObjectのメソッドを再定
義しているのかを区別する方法がありませんでしたが、1.9では区別
できるので、より再現性を高めたということです。