From: Tadayoshi Funaba Date: 2008-04-11T08:19:16+09:00 Subject: [ruby-dev:34324] Re: ComplexFloat > だとすると,ふなばさんは私の提案の何に対して「いびつ」であると > お感じになっているのでしょうか?そこがまだ理解できていないので > 教えてください. Rational で、自前の Bignum を用意した人は、Rational の事だけ考えてたん じゃないでしょうか。そのあたりがいびつの原因だと思います。 > 少なくとも C99 の複素関数群をサポートするか否かは Ruby の数値系の > 方向性に大きく影響するはずです.そして,複素関数群をサポートする場合の なくはないかもしれません。一応、C99 はつかわないことにする、とか。 村田さんは、C の Complex 型をつかえば速くなる、というようなことは直接 的にいわないようにしているようですね。たぶん、そうしても Complex が劇 的に速くなくわけでも、ruby の数値演算能力が飛躍的に向上するわけでもな いことを知っているからじゃないかな、と思っています。 手元で少しテストしたところでは、まったく速度改善のための配慮がない素朴 な Complex と RVALUE を拡大するなど有利な条件がある ComplexFloat を比 べても驚くほどの違いはないようです。また、実装と API は別、ということ は村田さん自身が認められたと思います。 何が目的で、何が手段なのかよくわからなくなっている気がします。C の Complex 型をつかいさえすれば満足、ということかもしれないけど、僕からす ると、現時点でそれが必ずしも最善とも思えません。 この件は、最初にいったように、実装の問題でしかないと思います。C の Complex 型をつかう可能性は否定しませんが、現時点で、つかえ、つかわない のはおかしい、とわれる筋はない、と個人的には判断しました。 この前、斎藤さんが紹介してくれたようなこともありますし、今すぐ何かしな ければならないことでもありません。いずれ、速度改善などが必要だと判断し た場合、その時良いと思えば、C の Complex 型をつかうこともあるのかもし れません。今はまだ、Complex の組み込み自体が正式に決まるかどうかわから ない時期です。 この件は、Complex 自体も含めて、まつもとさんに預けます。