From: Tadayoshi Funaba Date: 2008-09-17T07:12:58+09:00 Subject: [ruby-dev:36338] Re: mathn (#**) > 消したのは [ruby-dev: 20780] からのスレッドなのですが, その中で消して > も取りあえず大きな問題はないと言うことで, 消してしまったままなのだと思 > います. 一旦削除するがいづれ再定義するという話になっていたようですね。 complex.rb で一律に、Complex を返すようにするのはともかく (僕もそれは反 対です)、 (-2)**2 #=> 4 (-2)**Rational(1,2) #=> Complex(8.65927457071936e-17, 1.4142135623731) とまがりなりにも区別はできているわけですから、Integer と Float の定義を もう少し徹底すればよいのではないでしょうか。 > [ruby-dev: 20787] で新案が出ていますが... > > いまは, complexが組み込みになって, CMathが外に出ているので(微妙ですが) > また違った方針がある気がします. 最初の田中さの不満 ((-2)**2 => Complex(4, 0)) ですが、1.6.x の定義でも、 mathn の中でなら、正規化されて 4 になりますし、今現在、mathn.rb で定義 する分には、問題はないのでは?