たけ(tk)です。

[ruby-list:35597] Re: String#center にて 
Kazuhiro NISHIYAMA <zn / mbf.nifty.com> さん 曰く:
: > require "mathn"
: > 
: > p str[0,str.size/2]
: > 
: > #=> failed to convert Rational into Integer (TypeError)
: > 
: >  これって、Rationalクラスのほうの問題じゃないでしょうか?
: 
: Rationalクラス(rational.rb)ではなくmathn.rbがメソッドを
: 置き換えてます。
: 
: > * Rational を扱うためにはエラーにする必要があるのかな?
: 
: (n/2).to_i のようにしてmathnの影響を回避したことがあります。

 こういった、どこにでもありそうなスクリプトの動作が、ライブラリの読み込
みで動作がかわるのは、ライブラリ側の問題だと思います。

 この問題は、Rational#to_intメソッドを定義しておけば防げるので、特に問
題がない限りはrational.rbでRational#to_intを定義しておくべきだと思います。

class Rational
  def to_int
    self.to_i
  end
end

Take_tk = KUMAGAI Hidetake
たけ(tk)=熊谷秀武