まつもと ゆきひろです

In message "[ruby-dev:6796] {0,2}(regex.c), nonzero?(numeric.c), random"
    on 99/05/14, akendo / t3.rim.or.jp <akendo / t3.rim.or.jp> writes:

|正規表現のquantifierの{0,2}の0がマッチしない件ですが、
        (略)
|でうまくいくようです。

おおっ,いつ書き換えちゃったんでしょうか.すいません.

|MLを検索していて、nonzero?というのを見つけましたが、
|nilを返していました。

これは既にお気付きのように仕様です.

| /* 0 <= RANDOM_NUMBER <= 1 */
|-#define RANDOM_NUMBER (((double)RANDOM())/(double)RANDOM_MAX)
|+#define RANDOM_NUMBER (((double)RANDOM())/((double)RANDOM_MAX + 1))
| 
| #endif /* not HAVE_DRAND48 */
|にしていただけないでしょうか??

?? randもsrandも値域は [0,RANDOM_MAX) だと思ってたんですが,
違うんですか?

|と、diffをとってみて、drand48というのがあることに初めて
|気がつきましたが、drand48の方は[0.0,1.0)になってました。
|どうりでrandom(10)をいくら繰り返させても10が出て来なかった
|わけです。

rand(10)が[0,10)は仕様のつもりでした.

                                まつもと ゆきひろ /:|)