From: Tadayoshi Funaba Date: 2011-06-17T01:58:58+09:00 Subject: [ruby-dev:43833] Re: [Ruby 1.9 - Feature #4878][Open] CMath に frexp, ldexp, hypot の3関数は不要ではないか > -2 を返すように変更するのは議論してからにすべきだったとは思っていますが、 > 「間違っていた」とはあまり思っていません。 > ふなばさんもおっしゃるように CMath が Math との互換性を考えているなら、 > -2 を返す以外の選択肢があるようには思えないのです。 > あと、[ruby-dev:42007] のまつもとさんの議題提出に対して議論されたよう > にも見えません。 かなり誤解しているようなんで言っておきますが、俺は互換性が大事だなんて 思ってないんですよ。 そもそも、Math を複素数対応にして一本化したらと提案していたのですから、 互換性重視じゃないんです。CMath が出来た経緯は簡単に言うと、一体化に踏 み切れなかったから暖簾わけしたという事だと思います。 そういう経緯からすれば、振る舞いが違う事は承知の上で、俺の言い方でいえ ば、本来あってほしいように CMath では制限をなくす方向で拡張される事が望 まれているわけで、Math を基準に矮小化する事は考えられていなかったと思い ます。 完全な互換性がないからこそ取り敢えず暖簾分けしたわけで、遠藤さんの理屈 は通らないですよ。 あと、一応意見は言いましたが、俺は、lib/cmath.rb のメンテナでもないし、 このバグの修正を決めたわけでもありません。なので、俺に文句を言いたいら しいようですが、俺に言ってもどうにもなりません。 Math.cbrt の振舞いがどうしても重要と思えば、それを得る方法はいくらでも あるし (村田さんも提案していますし、別の方法もあるでしょう)、CMath がそ れをその為だけに尊重する理由にはならないと思います。