On Tue, Apr 14, 2026, at 3:42 PM, Alex Rock wrote: > Le 29/03/2026 à 13:14, Tim Düsterhus a écrit : >> // ... > > > I'm sorry that I'm arriving super late in the process, but I've > subscribed to the mailing list only recently. > > To give here my 2cents: > > I think this RFC addresses something good (scoped code in the middle of > a bigger chunk of code), but does it maybe a bit too bloated-ly.
Hi Alex. I think you're missing the point of this construct. What you're describing is much closer to the recently-declined `let` scoping keyword (https://wiki.php.net/rfc/optin_block_scoping). The entire point of context managers is to abstract away and make reusable the try-catch-finally logic. That logic needs to live somewhere so that it can be reused. That is what the ContextManager object is for. It's not a complication; it's the entire purpose of the RFC. Since you just recently joined the list you would have missed the earlier discussion in this thread of closures. (See https://externals.io/message/129077). In short, closures are what people use today for this use case, but they're a PITA because they don't support auto-capture (unless you're using the single-line version). That makes them less common, because they're a pain to use in this case. In addition, they do create a new scope, which... is not what we want in this case. Not creating a new scope is a feature, not a bug. Also, this email serves as notice that I've updated the RFC again to make continue an alias of break, as it was originally. --Larry Garfield
