From: Nobuyoshi Nakada Date: 2008-02-03T09:22:11+09:00 Subject: [ruby-dev:33572] Re: rational, complex and nuby なかだです。 At Sat, 2 Feb 2008 18:35:45 +0900, Tadayoshi Funaba wrote in [ruby-dev:33571]: > > 若干古い1.8.6がベースでしょうか。 > > ほぼ現 1.8 ですかね。 2002/01/25版にその後の修正を手で追加した状態? ChangeLogをみたら、 なんだか妙な感じですが。 > > それ以外にもいくつか変更が加えられているようですが、どういったものでしょ > > うか。 > > String#to_r や Float#to_r が、ないのもかなり不便で、そういう欠けている > ところをなるべく補おうとしています。 これは今後の予定でしょうか。 > あとは、たいしたものはありませんが、Numeric#infinite? とか、それを問う > のに、Float かどうかというのはあまり関係がないと思うので、追加してみた > りしています。ruby には、quotient、quotrem などが欠けています。 x.quotient(y) は x.quo(y).floor と精度を除いては等価ですか。 > Numeric#sign なども欲いなと思っていました。安定ソートも需要があると思 > います。思いついたもの、簡単に実装できるもの、単に思いついたもの、など > を追加してみました。逆に Numeric#floor などあまり役に立たないように思 > うので、削除してみました。 いや、そこまで削っちゃうのはどうかと思いますが。 IFFERENCESをみるとArray#stable_sort!などはadded methodsとなって いますが、実装はされていないように見えます。to_rなどと同じく今後 の予定? > > > 高々一回だけ評価される表現をつけてみました。 > (中略) > > こういったものは欲しいと思っていたのですが、この実装ではスレッド間の競 > > 合条件がある場合にうまく動かないと思います。 > > うーん、どういう風にしたらいいですかね。 Thread.criticalで動くので競合条件で動かないというのは正確ではな いですね。例外が起きたときにcriticalのままになってしまうのはすぐ 直るでしょうが、再入可能性とか内部でcriticalでなくなったりする可 能性を考えると、バリアが必要になるはずです。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦