Hi internals

I closed the vote on the match expression RFC.
https://wiki.php.net/rfc/match_expression

First of all, thank you to everybody who participated!

It was declined with 28 no and 6 yes votes. There were three main criticisms:

1. The RFC wasn't discussed extensively enough and too many changes
were made last minute
2. match should be expression only (no blocks)
3. Omitting (true) should loosely compare the arm condition to true

Criticism 1 is absolutely justified and 3 makes sense to me.

Unfortunately, I think criticism 2 somewhat defeats the purpose of the
RFC (at least how I envisioned it). The main motivation to me was a
new switch statement with safer semantics. Returning values was a nice
secondary feature. According to Nikitas analysis (1) an expression
only match would be usable in roughly 40% of cases where a switch
would've previously been used. Failing to address the other 60% seems
less than ideal, especially given the fact that the plan is to extend
match with pattern matching.

If we do decide to remove blocks I think the RFC needs to find a
different motivation since criticizing switch without offering an
alternative seems disingenuous. I will take the next few days to think
about how to move forward.

Thanks again!

Ilija

1) https://externals.io/message/109842#109868

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to