Re: Re: [RFC] [VOTE] Random Extension 5.x
| From: | Tim Düsterhus | Date: | Fri, 17 Jun 2022 15:54:05 +0000 |
| Subject: | Re: Re: [RFC] [VOTE] Random Extension 5.x | ||
| References: | 1 2 3 4 5 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-117982@lists.php.net to get a copy of this message | ||
Hi
On 6/17/22 14:52, Go Kudo wrote:
(3) This is a very tricky problem. As you point out, it took me a while to figure out PCG64 too. However, after statistical testing PCG64 (pcg_oneseq-128-xsl-rr-64) seems to do a good job. (Though Xoshiro256** does as well, and has a more obvious name.) Regarding the naming issue, I have looked at implementations in other languages (Python's NumPy and Rust) and none of them seem to be very clear. I agree with you about keeping the names clear. Although it is complicated, I don't think anyone would be particularly bothered by the name PcgOneseq128XslRr64. However, some people may continue to use MT because they don't understand it well. I think the possible options are as follows A. Rename PCG64 to PcgOneseq128XslRr64 B. Rename PCG64 to PcgOneseq128XslRr64 and then re-implement the more obvious Xoshiro256StarStar C. Remove PCG64 and re-implement Xoshiro256StarStart Personally, I think B is the best. What do you think?Any of those would be fine for me. You can either make a decision as the RFC author and include that into a general vote, or you could split this into separate votes (each with a 2/3 decision): - Add xoshiro256** as Xoshiro256StarStar? - If xoshiro256** is added: Remove PCG64? - If PCG64 stays: Rename PCG64 to PcgOneseq128XslRr64? Best regards Tim Düsterhus PS: I believe you missed my suggestion (4) Randomizer::randomString($charset, $length).