けいじゅ@いしつかです.
In [ruby-dev :36472 ] the message: "[ruby-dev:36472] Re:
{Complex,Rational}::Unify ", on Sep/23 07:37(JST) Tadayoshi Funaba
writes:
>> mathn.rbはcomplex.rbなどと同一の作者が同時に(一体として)作成
>> したものだったので、そのような配慮が存在したのだと思います。
>
>作った当時は単に一体だっただけで、実装に問題があったわけではなかったと
>思います。しかし今は客観的に見て奇妙に見えますね。
実装に問題なかったというとそうでもないと思っていましたが, 取りあえずそ
うなっていた感じです.
現在 complexが組み込みになった以上今のようなものはよろしくないと私も思
います.
>この機能を無効にしようと思います。仮に後々この機能がどうしても必要になっ
>たとしても、公式のものにはなり得ないように思います。
まず, Unifyなしで動作するように, mathn側で対応させてください. それから,
Rational/Complex の方を変更していただけるとありがたいです.
>この考えは春に拒否されて、mathn は mathn で頑張る、ということになったの
>ですが、あまり頑張れていないように見えます。mathn が目指したところは気
>に入っていますが、mathn 自体はあまりうまくいっていないので、将来的には、
>必要なら ruby 側になんらかの方法で取りこむなどして解消すべきだと思いま
>す。
というか, 近い将来
int / int -> Rational
になるとすれば, その時当然, Rationalに関する正規化ははいることになると
思います.
complexに関しては, その時点でCMathですかねぇ...
現行(CMathなし)では,
i*i => -1
となり,
sqrt(i * i) => i
にならなくなるので... もしくは, CMath相当の振る舞いが標準の振る舞いに
なるか...
そうすれば, mathnの役割はほとんど終わったことになると思います.
__
---------------------------------------------------->> 石塚 圭樹 <<---
---------------------------------->> e-mail: keiju / ishitsuka.com <<---