2022年5月31日(火) 18:54 Go Kudo <g-k...@colopl.co.jp>:

> Hi internals.
>
> Although I have explained that due to the global turmoil I will delay
> voting on the RFC as long as possible, it is time to start voting on the
> RFC in order to get the implementation to full status by the PHP 8.2
> Feature Freeze.
>
> I apologize for the delay in responding to the points you had already
> pointed out. It has been addressed as follows.
>
> - Random\Engine\PCG64::__construct() now takes an `int|string` $inc as its
> second argument
>     - This makes it fully compatible with the PCG64 original implementation
> - Fixed an algorithm implementation error in PCG64
> - Fixed compatibility issues with PHP 8.2 in test cases
> - More detailed description in RFC
>
> Previous discussion thread: https://externals.io/message/117295
>
> Voting will begin at 2022-06-14 00:00:00 (UTC).
>
> https://wiki.php.net/rfc/rng_extension
>
> Regards,
> Go Kudo
>

Good evening.

While refactoring, I found an error in the PCG64 algorithm we are
implementing.

It should be implemented as pcg64_oneseq_128 (XSL-RR), but currently
pcg64_setseq_128 (XSL-RR-RR) is implemented. The RFC also incorrectly
states that NumPy implements pcg64_oneseq_128.

https://wiki.php.net/rfc/rng_extension

The RFC has been corrected for the above. This change removes the
int|string $inc argument from RandomEngine\PCG64::__construct(), leaving
only int|string|null $seed.

Regards,
Go Kudo

Reply via email to