Re: [RFC] [Under Discussion] Random Extension 5.x

From: Date: Fri, 11 Mar 2022 11:10:53 +0000
Subject: Re: [RFC] [Under Discussion] Random Extension 5.x
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-117301@lists.php.net to get a copy of this message
2022年3月10日(木) 3:57 Tim Düsterhus <tim@bastelstu.be>: > Hi > > On 3/9/22 11:48, Go Kudo wrote: > > Proposed RFCs and implementations have been reorganized. The main changes > > are as follows > > > > https://wiki.php.net/rfc/rng_extension > > https://github.com/php/php-src/pull/8094 > > > > I've compared the RFC against the implementation once more: > > - The RFC should clarify that returning an empty string in > Engine::generate() is not allowed. > - The corresponding test > 'ext/random/tests/03_randomizer/user_unsafe.phpt' should verify not just > an exception is thrown, but also the exception message (I'll add a > review comment). > > - PCG64 effectively has 256 Bits of internal state (128 Bits for 's' and > 128 Bits for 'inc'), but it only accepts 128 Bits for 's'. 'inc' > cannot > be provided by the user. The purpose of 'inc' is not entirely clear to > me, but the user likely should be able to specify it for full > reproducibility. > - The default initialization of PCG64 with a null seed will fill 'inc', > not 's'. This likely is a bug? At least it's inconsistent with the > previous point. > > - The RFC is missing an explanation of the guarantees the implementation > will (or will not) make. This is important for the user if they are > relying on reproducibility of the sequences and outputs. The more > guarantees we give, the less can be changed in the future. I've > previously mentioned that in the thread for '4.x': > https://externals.io/message/117026#117061 > > Best regards > Tim Düsterhus > Hi Tim Sorry, I must have missed some of your emails. We will make corrections to the areas you pointed out. I will reply to your email first as I am not familiar with English and it may take a little time.. Thank you!

« previous php.internals (#117301) next »