Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:120651 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 23793 invoked from network); 21 Jun 2023 03:46:27 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 21 Jun 2023 03:46:27 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 28BC11804BE for ; Tue, 20 Jun 2023 20:46:26 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 20 Jun 2023 20:46:25 -0700 (PDT) Received: by mail-qt1-f172.google.com with SMTP id d75a77b69052e-3ff2192bfbfso24590461cf.3 for ; Tue, 20 Jun 2023 20:46:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687319185; x=1689911185; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Qy+67DU0Jc9D786XJlwYOogdio5QXWohPl7GQ6ua85A=; b=XvwjX5Rog7YpfAwlrGRd+CRrCJNBwHth8xnMtbxqo2FyWBqDamdEx976poy2KiyMib bz9/1M8DR7vM7x/+R2HTJgll7QuPJjsn8ntR2GXR1TH85ihsLLnaJWl80he0eVDwa3un ERQjoocHdbeoy3qky9FjGZ1IIN9gLIWcF9jojN11vB2Yll6NvL0LWtNu66j6ERoD1l86 hv/jXyT25GWxjLImVfYbFntu1/QUKtS18eMopDx0V9TvCALlDFritu75mbXqqmgnW2js q8A5OlQAkItpEG/hr0kJefDLFebVObiMvp7MhsWvnLt5flBM+40Fo5xfh8thwUMtVizl 1WBA== X-Gm-Message-State: AC+VfDwOFsOz6pECvNUJ6z9YkTAmnjdKe6XE+8tKhTDWgNcBbKlW9+Qi +fDbZe31y2aTDyT3sM/1V2cVfMyDQ4ydPqRJBbo= X-Google-Smtp-Source: ACHHUZ4LP1FLFEgmR4UammqwviBgxRVyd2NF2JCAmMH4mgEw/dODqZibMjK1sz+ZcXHv/z4kPxSAvfPFnDrU220eNSg= X-Received: by 2002:a05:620a:22d:b0:762:4c11:b93e with SMTP id u13-20020a05620a022d00b007624c11b93emr10023131qkm.24.1687319184627; Tue, 20 Jun 2023 20:46:24 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Tue, 20 Jun 2023 21:46:08 -0600 Message-ID: To: David Gebler Cc: PHP internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] [RFC] Interface Default Methods From: levim@php.net (Levi Morrison) On Tue, Jun 20, 2023 at 6:29=E2=80=AFAM David Gebler wrote: > > On Tue, 20 Jun 2023, 04:10 Levi Morrison, wrote: > > > > I like the idea of this RFC - in fact it's one which has been near to= p of > > > my wishlist for PHP language features for a long time - but I think t= his > > is > > > an issue with the proposed implementation which at the very least > > warrants > > > highlighting and discussion. > > > > I understand your concern but personally believe it's overblown. This > > problem already exists with abstract classes, but doesn't seem to be > > that much of an issue in practice. I hope static analysis can fill the > > gap here, but don't think these checks are necessary to ship this > > feature. > > > > > Yeah I suppose I'm just saying "Interface default methods" can be > interpreted a few different ways and there's key differences between > Java-style, versus syntax sugar for mixing an interface and a trait in to > one unit, versus a user can effectively extend multiple abstract classes > but with interface keyword. I will update the RFC soon. In my head it was so obvious that it would be similar to regular inheritance and less like traits, to the extent I didn't even realize I'd need to specify it. This is why discussion periods can be valuable; the RFC doesn't always say what's in the RFC author's head :)