From: Tadayoshi Funaba Date: 2008-03-30T20:22:51+09:00 Subject: [ruby-dev:34181] Re: Complex組み込み > Ruby を科学技術計算に使うために最適化する事を良いと感じてらっしゃらないんでしょうか. 良くないというか、無理というか。現時点で、ruby として出来るだけのこと をしても、そんなに大きな結果が得られるとは期待できないと思います。 仕様上速度向上に不利なところがあると思うし、ruby の数値系は、仕様実装 両面での不備も少くないです。念の為に断っておきますが、組み込みの複素数 のあつかいが、科学技術計算言語 ruby の鍵を握っているわけでは全然ないと 思います。 今後、地平を広げるように、努力はされるでしょうが、科学技術計算の山頂を 目指すことは考えにくいと思います。 > 私は Ruby を専ら科学技術計算のフロントエンドとして使用していまして,数値計算機能が > もっともっと高速化してくれたら嬉しいと日々感じています. 科学技術計算一般に不利でも、利用できる範囲はあるし、どんなに向いてなく ても、つかおうとする人はいると思います。それはそれで面白いと思います。 > 今回,複素数ライブラリの組込み化という文脈でこのような議論になっているわけですが, > Ruby の複素数ライブラリが数値計算以外の目的で使用されるとしたら, > どんな用途が多いんでしょうね.私は数値計算以外の目的で使用したことが無いので, > 複素数の成分を浮動小数点数以外にしたいと思ったことがありません. どういう用途が多いかは知りませんが、ruby 全体で考えれば、いわゆる数値 計算以外でつかっている人のほうが圧倒的じゃないですか。 ruby は文字列処理などのほうが向いていると思います。それでも、数値演算 の可能性は排除されていません。 rails をつかう人にとっては、ruby は rails 言語かもしれません。そういう 人には、複素数自体があまり必要ではありません。作者のまつもとさんも含め、 圧倒的多数は、この件に興味がありません。 ruby がある程度一般化されているからこそ可能性を得られたのに、自分の都 合のいいところだけ取り出して、他は要らない、というのは説得力がないと思 います。 > 特殊実装を用意することで対応できないでしょうかね.その場合,相互の型変換の > ルールを決めるのが大変でしょうか.Math.sqrt の結果をどうするかという問題も > 発生してしまいますね.難しい >_< そういうのは、まずは別途ライブラリでやるのが、普通じゃないでしょうか。 成果が上って、利用者が多ければ、拡張ライブラリや組み込みということもあ るかもしれません。あるいは、そういう機能に特化した ruby をつくるとか。 今回の作業に当って、complex が作成されたときの話や Presition 誕生時の 議論を読み返しましたが、ここまで来るのに、10年かかりました。今回、仕様 変更しなかった、というので怒ってる人がいますが、そうしたら、組み込み自 体が難しかったと思います (ちなみに、本決まりではない)。一歩進めたこと に意義があると思います。