On Tue, Aug 25, 2026, at 6:18 AM, سپهر محمودی wrote:
> Hi internals,
>
> While reviewing various RFCs that introduce new functions, I noticed an 
> inconsistency: some authors include a userland polyfill (reference 
> implementation) in their RFCs, while others do not.
>
> I wanted to open a discussion on whether we should strongly encourage 
> RFC authors to provide a PHP userland implementation when proposing new 
> standard library functions, **where technically feasible**.
>
> Of course, I understand that this isn't possible for every new 
> function—especially those that interact with low-level OS APIs, memory 
> management, or internal engine features. However, for functions dealing 
> with arrays, strings, math, or general logic, I believe this has a 
> couple of major benefits:
>
> 1. It clarifies the exact intended behavior, including edge cases and 
> type coercions, making the proposal easier to understand without diving 
> into the C implementation.
> 2. It immensely helps the community (e.g., the Symfony polyfill team) 
> to quickly and accurately port the function to older PHP versions once 
> the RFC is accepted.
>
> Should we consider adding this as a standard recommendation (e.g., 
> "Reference Implementation") in the official RFC template for applicable 
> functions? 
>
> I would love to hear your thoughts on this.
>
> Best regards,
> Sepehr

Interesting idea.  I think "recommended where relevant, but not required" is a 
reasonable policy to have.  As noted, many RFCs don't have polyfillable 
features.  For those where it is feasible, I think the "make it clear what the 
logic is" angle is the most compelling.  (I often do that in the non-polyfill 
RFCs to help clarify the behavior.)  And it would also give us a target to 
benchmark against to see if putting it in C really has a performance benefit.

--Larry Garfield

Reply via email to