Hi

[dropping most of the folks from the Cc list to reduce noise a little]

On 7/18/25 19:08, Nick wrote:
As mentioned earlier, this is my very first RFC. I am at a point where I am a 
bit overwhelmed.

With an RFC touching core language semantics, you've certainly opted to touch a hot topic. Even for me, as an experienced contributor to Internals and the PHP language that was quite a few emails to work through, so I totally get being overwhelmed.

I think a big contributor to this is that you've choosen a less-than-ideal time to propose the RFC. As you are well-aware, by now feature freeze is in less than 4 weeks. Many of the core contributors, including myself, are busy with wrapping up the implementation of their own RFCs or helping with the review of others. Keeping track of multiple last-minute RFCs at the same time and carefully thinking about the implications and then, should the RFC pass, also about the implementation is really demanding.

I'm in the lucky position that I can spend part of my company time contributing to PHP, proposing RFCs and also providing feedback on other RFCs. But I can't make this my full-time job, so I've specifically set aside several hours my free time today to catch up with the thread to be able to provide my feedback on the RFC. The announcement of the upcoming vote has caused me to send out several emails all over the thread that were less refined than would be usual for me, because I felt the need to get out *something* before it's too late.

That said, Larry and I heard you and already decided to offer a split vote to 
enable us to at least land “set only” in 8.5.
If we didn’t misunderstood it, then y’all agreed on `set` (only) should be 
allowed?

I am unable to come up with arguments against supporting a set hook for readonly properties. While I'm not sure I would be in favor (I would need to think about this more), I would not be against. So I might abstain or I might vote in favor after I had time to fully think about it.

> Not exactly what I wanted, but it is what it is.

I totally understand it's discouraging when needing to wait for another year before being able to make use of one's own contributions. But at the same time any change to the language has a big impact on the ecosystem and needs to work not for just one year, but for 10 or more years. Some things can probably never be removed from the language. So to me it's important to err on the side of caution. "No is temporary, yes is forever".

I offer to follow up with a “readonly `init` hook” RFC for 8.6 to sort the rest.

I'm certainly happy to help out with figuring out all the important details and possible edge cases for an "init hook" RFC for the PHP 8.6 cycle. Note how I specifically left out the "readonly" there, since I don't think there is a need to restrict "init" to just readonly properties.

I’d appreciate if voters could settle on a yes for “set only” for 8.5.

Wdyt? Would this help to get closer to closing the discussion?

From my side, removing the get hook part from the RFC would definitely settle the discussion.

Best regards
Tim Düsterhus

Reply via email to