I would like to change the proposal to one based on the original proposal (pecl orng) instead of the confusing RFC proposal. https://github.com/zeriyoshi/php-ext-orng
But, I am a bit skeptical about bc-break. It is possible to implement it without destroying the current behavior, but keeping the old implementation may lead to userland implementations that mess up the state of RNGs in the future. I haven't decided whether to include it in the next RFC, but we think we need to deprecate all functions that use RNGs with global state (shuffle(), array_rand(), str_shuffle()) in the future. The API in the rejected RFC was confusing because of my attempt to solve this problem. I've tried to maintain maximum interoperability and usability. Also, I am happy to see that Nikita's rules for namespace assignment to extensions have been approved. I'm going to use the `RNG` namespace. 2021年5月12日(水) 4:46 Levi Morrison <levi.morri...@datadoghq.com>: > On Tue, May 11, 2021 at 6:58 AM Go Kudo <zeriyo...@gmail.com> wrote: > > > > Hi internals. > > > > I previously proposed an object scope RNG implementation inside. > > However, the RFC was rejected after a vote. > > > > https://wiki.php.net/rfc/object_scope_prng > > > > Vote: https://externals.io/message/113888 > > Discussion: https://externals.io/message/112819 > > > > As per my previous proposal, PHP is currently in a very unclear state > > regarding the random number implementation. > > > > So I would like to ask a few questions. > > > > - Do you think that PHP needs an object-scoped random number > > implementation? And why? > > - If the API in the previous RFC was improved and voted on again, would > you > > be willing to vote for it? > > - What issues do you think should have been resolved between proposal and > > ballot in the previous RFC? > > > > I would like a variety of opinions. > > > > Translated with www.DeepL.com/Translator (free version) > > > > Regards, > > Go Kudo > > I would like to see an extension that doesn't contain the > backwards-compatibility breaking changes in the RFC. Every function, > type, and constant should be namespaced according to the extension. > For instance, if you want to call it `ext/rng`, then the namespace can > be `rng` or `Rng` or `RNG`.No exceptions for now! The previous > proposal had namespace things, and un-namespaced things, and breaking > changes, and I don't think that made a cohesive proposal. > > Also, php-src generally doesn't suffix interfaces with the name > "Interface". Please provide another name for `RNGInterface`, like > `RandomNumberGenerator` or `RNG`. >