From: "NAKAMURA, Hiroshi" Date: 2007-07-11T23:18:40+09:00 Subject: [ruby-dev:31183] Re: Random -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 再度修正しました。うささん修正もマージしてあります。 うささん、どうもありがとうございました。 http://dev.ctor.org/download/random_20070711_2.tar.gz 14c45c5d06587ce92aad4485f621a5cb856262bb random_20070711_2.tar.gz 修正点です。 1. Random.newの引数0での挙動に関するコメントを修正(これもdave) 2. Random#bytesに整数以外を渡したらエラー(修正 by うささん) 3. Random#bytesが返すバイト列の作り方にバグがあり、系列の一部を無駄に 捨てていた(修正 by うささん) 4. Random#integerにBignumの0を渡してもエラーにならなかった (修正 by うささん) 5. 64bit対応(by うささん) 6. Random.newにnilを渡した時のエラーを、TypeErrorからArgumentErrorに。 7. Random#randにBignumの0を渡した時、Fixnumの0の時と同じ挙動に。 残るは↓と、無引数srandをもしかしたら復活、くらい。 Tanaka Akira wrote: >> 1. RDocコメントを書いた。rdocには通してないけど。 > > Ruby currently uses a modified Mersenne Twister with a > period of 2**19937-1. > > と、ありますが、Mersenne Twister をどう modify してましたっ > け? よくわかりません。mt19937部分はr2654のまつもとさんのコミットから変わって ないようだし、r5340のdave(黒?)が上記コメントを書いた時点では、 「modified」とは言えないような気がします。mt19937arのことを言うつもりで 「modified」と書いたのかなぁ。 とりあえず「modified」を消そうかな? 誰か違う認識の人はいませんか。 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.1 (Cygwin) iQEVAwUBRpTmpR9L2jg5EEGlAQL4cQf+NplJg6yxBxs3LjOgp+I2Ca+V69zGaU6e x+SSf9dlOaxgtfCyLwO6+OQJsw4N5HoO+YGvLzYxG1WFcT01tB8ihfUviiR1o9O2 5ldAld2F7wBq7u+Fawr8CJnx416vg4FWqe8QGYZR3aFMIYvLuFt1kevu/FadcNWN b25gvGrAsff9kdEsqTYmgHqcr4WzIYKI8C2cR0zubmfnrTb09XYT3eClnOwlYySW vtHuMHoawbj9gwV2/YojJXkr+n6fOPD/nKFyfuE4YaCRMkYf6joQDRsDg+xSDqux +b+DJdexQtICIUgckuLAg6WemP6MleTpoaBM9kgxARVwAhgryBPOAg== =9zqe -----END PGP SIGNATURE-----