Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:86529 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 18466 invoked from network); 9 Jun 2015 18:19:36 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 9 Jun 2015 18:19:36 -0000 Authentication-Results: pb1.pair.com header.from=morrison.levi@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=morrison.levi@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.213.180 as permitted sender) X-PHP-List-Original-Sender: morrison.levi@gmail.com X-Host-Fingerprint: 209.85.213.180 mail-ig0-f180.google.com Received: from [209.85.213.180] ([209.85.213.180:34804] helo=mail-ig0-f180.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 0D/78-00828-73E27755 for ; Tue, 09 Jun 2015 14:19:35 -0400 Received: by igbhj9 with SMTP id hj9so18809763igb.1 for ; Tue, 09 Jun 2015 11:19:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=oCAHHtv8Y7eDb66xWE770Sb234K2DyuRjc2G02LJfKI=; b=bxG3Q4yvOJoB5JKZvHWUsfvZ6UfGblzYqqkDdPcU4KdcvG/+YBE1M1z+a+N1HUsI9N MYx8DbBDqf22O2Zo8avczQ5ho5BuVUHIWClKT1KP8bPhX2UUVsOyiC5LHkwM1ZEovvu0 IeRpcT94ACrSduinFnrTcg2YCZYJC9bbsysVEwjFTxzbMWKDXeQ+7H/htQ2bDdickqlS gpCoq2JCc2t28VcN2t9AobgpWA0LQdF1MC3ZW356qSOCFro5rJEa018uk5zMNPN3ygUz zlSY2MHW4siwBjxCQfEWI0Q63y12/NfUOO1wXWTjvRkBbo801hDcTfQUDwIa16OK5erW TmGg== MIME-Version: 1.0 X-Received: by 10.42.132.6 with SMTP id b6mr139863ict.8.1433873636954; Tue, 09 Jun 2015 11:13:56 -0700 (PDT) Sender: morrison.levi@gmail.com Received: by 10.79.20.5 with HTTP; Tue, 9 Jun 2015 11:13:56 -0700 (PDT) In-Reply-To: <12C3389A-AFF5-42CA-8190-E4227309DAED@icicle.io> References: <971AB39D-1E20-43E8-9CF1-A7F67E3C14C3@icicle.io> <556363D3.1040902@gmail.com> <12C3389A-AFF5-42CA-8190-E4227309DAED@icicle.io> Date: Tue, 9 Jun 2015 12:13:56 -0600 X-Google-Sender-Auth: e_T8B15z5LCJLbfUkQT85EIT-0I Message-ID: To: Aaron Piotrowski Cc: internals Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] [RFC] Throwable Interface From: levim@php.net (Levi Morrison) On Tue, Jun 9, 2015 at 11:40 AM, Aaron Piotrowski wrote: > Does anyone have any questions, comments, or concerns about the Throwable= Interface RFC? > > http://wiki.php.net/rfc/throwable-interface > > The proposed exception hierarchy: > > interface Throwable > =E2=8A=A2 Exception implements Throwable > =E2=88=9F Error implements Throwable (replaces EngineException) > =E2=8A=A2 TypeError (replaces TypeException) > =E2=88=9F ParseError (replaces ParseException) > > I=E2=80=99d like to complete a vote before too many alpha releases are ma= de. > > I=E2=80=99ll be happy to resolve the merge conflicts in the PR if the vot= e passes. My only objections have already been raised, but I'll reiterate them briefl= y: 1. Having both Error and Exception makes little sense, especially since we have historically used error to refer to an error that wasn't an exception (something that triggered the error handler). 2. The name "Error" is going to have a fairly high collision rate with user code. 3. I think they should all use Exception as the root instead having a new root with multiple children (and yes, I am aware of the impact of this, and it has already been discussed on this list).