From: Tadayoshi Funaba Date: 2008-02-23T14:27:44+09:00 Subject: [ruby-dev:33914] Re: rational, complex and mathn > はい。Complexについても1.9の間に組み込んでよいと思います。 組みこみはないと思っていたのですが、組みこむ場合、確認すべきことがあり ます。 * ruby で書かれたままのコードがある rational よりも complex のほうが多いのですが、Complex(string) などは、 結局、ruby でのあらゆる数値表現があり得るので、真面目/愚直に C で書 くと、それだけでも結構な仕事になりそうです。Complex(stinrg) と String#to_c で、厳格な版とそうでないものの書き分けが必要ですし。 1) C で書きなおす 2) (当面は) prelude に書いておく 3) そこは妥協して require させる * 上書きされるメソッド {Fixnum,Bignum}#quo の振舞いは固定されることになります。Math の関数 も定義が変ります 1) もとから定義を変える 2) (当面は) prelude に書いておく 3) そこは妥協して require させる * coerce 既存の数値クラスはお互いのことを知っています。拡張ライブラリでは、 coerce 頼みです。 1) coerce 頼みはやめる 2) (当面は) coerce 頼みでいい * 内部表現 このまま T_STRUCT をつかうのがいいのかわかりません。 拡張ライブラリなら、わりと簡単に置き換えられそうですが、組みこみだと結 構やることがあるので、先ずは rational だけに注力したほうがいいのかも。 complex は他の人がやってもいいですし。独力で真面目に両方やると組みこめ るのは数ヶ月後になるかもしれません。