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`.
>

Reply via email to