On Mon, Apr 18, 2016 at 9:40 AM, Marco Pivetta <ocram...@gmail.com> wrote:

>
> I voted "NO" due to previous discussion. TL;DR: this is FAR off the 80/20
> use-case for a language syntax change.
>
> ...
> These 3 exceptions usually result in separate handling anyway. If same
> handling is needed, you can as usual extract a private method  (if you are
> in a class) and deal with it there:
>
> ...
> Still, even in this case, I'd flag it up in a code review, as same handling
> for 3 different exception types generally (not always) means something is
> really wrong.
>
> So we are building a feature for a 1% case that, while simple to implement
> at parser-level in PHP, requires changes in all userland libraries that do
> parsing or rely on the AST.
>

I agree: the times this need arises are relatively rare, and in those cases
functional encapsulation cleanly handles the repetition. I would vote no,
were it not for one thing: union types
<https://wiki.php.net/rfc/union_types>.

catch constitutes a formal signature, exactly like a function signature. In
my mind, this proposal and the union types proposal are intrinsically tied.
If we have one, we must have the other. If not, we're inducing a sadness.

Since I do see the need for union types, and since I believe the two must
be accepted or rejected together, I voted yes.

Reply via email to