まつもと ゆきひろです

In message "Re: [ruby-dev:40268] Array#flatten 	の仕様変更?"
    on Sun, 31 Jan 2010 09:48:36 +0900, Hidetoshi NAGAI <nagai / ai.kyutech.ac.jp> writes:

|1.9 の Array#flatten において,配列内のオブジェクトの 
|to_ary メソッド呼び出しに対する挙動が原因でエラーとなる条件が
|NameError から NoMethodError に変更になったようですが,
|これは仕様変更でしょうか?

すみません、正直なところ「flattenにおいて、配列内のオブジェク
トの to_ary メソッド呼び出しに対する挙動が原因でエラーとなる
条件」というのが、なにを意味するのかよくわからないのですが。
1.8以前はto_aryを持っているかどうかをrespond_to?で判定してい
たのを、1.9では直接呼び出すようにしたことと関係していると思い
ますが。

|これが原因で Ruby/Tk が動かなくなっているのですが,
|問題の箇所を NameError から NoMethodError に変更すると 
|仕様変更になるのでどうしようかと迷っています.

NameErrorとNoMethodErrorは継承関係にあるので、あまり問題は起
きないと思っていたのですが。具体的にどう動かなくなっているか、
どのように変更しようと思っているか、など、聞かせていただける
とアドバイスしようがあると思います。

                                まつもと ゆきひろ /:|)