From: Tadayoshi Funaba Date: 2009-06-16T00:35:37+09:00 Subject: [ruby-dev:38641] Re: Fixnum#fdiv > ふむ。「中途半端」というのはfixnumとbignumで食い違うと言う意 > 味ですよね。一貫性を持たせるため統一することに反対ではありま > せん。 いづれにしても、この際はっきりさせて修正することになるでしょうね。 > Float(x/y)の方が情報が落ちていないのは分かります。 > それが望ましいのかどうかは、私には判断できないのですが。 > > 望ましいということになれば、コミットしていただくのにやぶさか > ではありません。 何が望ましいかは難しいですからね。ところで、python 3 の true division では、結果が浮動小数点数になりますが、 >>> import sys >>> 1 / (int(sys.float_info.max)*2) 2.7813423231340017e-309 >>> int(sys.float_info.max) / (int(sys.float_info.max)*2) 0.5 >>> (int(sys.float_info.max)*2) / 2 1.7976931348623157e+308 ruby でも / を quo しようという主張がありますが (僕ですが)、Rational が ない場合の quo が fdiv の意味であることを考えれば、整数を含む任意の数を あつかう総称的な fdiv としてあり得る選択だと思います。 逆に現状ではこのような結果を得ることは簡単とは言えないので、存在する価 値はあると思います。