From: Yukihiro Matsumoto Date: 2008-12-03T09:14:13+09:00 Subject: [ruby-dev:37250] Re: [ruby-cvs:27586] Ruby:r20368 (trunk): * ext/bigdecimal/bigdecimal.c (BigDecimal_div2): should return まつもと ゆきひろです In message "Re: [ruby-dev:37249] Re: [ruby-cvs:27586] Ruby:r20368 (trunk): * ext/bigdecimal/bigdecimal.c (BigDecimal_div2): should return" on Wed, 3 Dec 2008 00:24:57 +0900, Tadashi Saito writes: |> * このまま。引数によって戻り値の型が変わるのは気持ち悪い |> * 引数がない時はInteger。ある時はBigDecimal | |については、後者を押します。丸めたはずなのに整数として扱えない(odd?/even?, upto, |succ, ... が呼び出せない)という方が気持ち悪い気がします。 その方向で考えてみます。 |なるほど、まつもとさんの意志が「(今後も)Numericと違う道を選ぶ」でなかった |(そして今もない)ということは、了解しました。ただ五年前の感じだと、メンテナである |小林さんも意志を同じくするかは、ちょっと微妙な気がします。 | |実際、Numericに近づけるような、バグフィクスのニュアンスが少ない積極的な仕様変更や |そのための議論は、5年間ほぼ皆無だったように見えます。 |# なのでBigDecimal#to_rがすぐに使えるようになったのは、自分としてもうれしいです まあ、確かにそうですね。ただ当時から小林さんはBigDecimalの開 発にあまり時間を取れなくなっていたように思いますから(本人から そう聞いたわけではありませんが)、「改善したくない」というより は単に時間的余裕がなかったのではないかと推測します。最近もほ とんど反応がありませんし。 ので、1.9.2以降は私が積極的にいろいろ手を入れようと思います。 が、なにぶん私のやることですから、いろいろ不備がありそうなの で、たとえば小林さんが再登場してくださるのは歓迎です。 |余談ですが自分は、Numericらしくある10進小数型が欲しくて、結局は自作という道に走り |ました。結果としては、1/4くらいのコード量で、場合によっては数十倍高速で、かつメモリ |消費も3割以上効率的な物が、既存Numericを尊重したつもりのインターフェースと共に実現 |できたので、ある程度満足しています。 | |# という宣伝でした (^^; 「1/4くらいのコード量で、場合によっては数十倍高速で、かつメモ リ消費も3割以上効率的」というのは大変魅力的なんですが、標準添 付としては * すでにあるBigDecimalを捨てるわけにはいかない(互換性問題) * 同じ働きをするライブラリを複数添付するのは望ましくない (optparseの二の舞) という二つの理由から今後もBigDecimalに手を入れつつ進むしかな いような気がします。タイミングと言うのは難しいものですね。 Decimalをベースに逆にBigDecimalとの互換性を高めると言う手はあ るのかなあ。 まつもと ゆきひろ /:|)