Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:120804 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 71639 invoked from network); 13 Jul 2023 12:39:21 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 13 Jul 2023 12:39:21 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 6132F180339 for ; Thu, 13 Jul 2023 05:39:21 -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=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,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-oo1-f42.google.com (mail-oo1-f42.google.com [209.85.161.42]) (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 ; Thu, 13 Jul 2023 05:39:17 -0700 (PDT) Received: by mail-oo1-f42.google.com with SMTP id 006d021491bc7-5607cdb0959so383815eaf.2 for ; Thu, 13 Jul 2023 05:39:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689251957; x=1691843957; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=zD5wdA25Zxh7u1VsQjyVhpp+N6gPXhMuYq1+IgrDgTs=; b=sIa7x6XLsZ5qE5AWSJfUjERZtNt7PxoS/w+rbJF9gpnbDfjaaoKIuhMgjR4XY7QdK+ C3Qlyiz9/Bsla4Nim82wHwerkaB7aJNxf4aIRqfoVOJiMhDR1u5X/zA9xtTaAFY3dx7x cj6hn5x7aXx0UAvZNxg2B9S8k3ber9Tz5KxD3NL9gZUYy6dJ5tJBHP1dCjl8nOsrvYMB pRIci4w1A13i4nK4z6c2kqMKiH4IK1lDu8km7vZbHH/muQhpGsI3759IbobkglsRZrcK 5Ti3jPjuM8b42gVxdqvo9OgyF0rFio37Umck4epScePnwLKxztx7iA8SfR4TZcegryY3 prnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689251957; x=1691843957; h=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=zD5wdA25Zxh7u1VsQjyVhpp+N6gPXhMuYq1+IgrDgTs=; b=D8KeiMYHNIYn4mmcMNHweL7SqmOvIkkUgr/rjhiU7Kk+F04GvIiezba1BnV7sB0lbv GVQKAP49SWvTQfFLWtU7rKuuodz2ALt/byAkUvAITQhz6l12Nk+DfF47ifVYx3RL/juL Ch2/6PMfCIuVPji8iplq3dqFwGbNTB8JJMSK5Dg1tCfN8aARkKYq+lz8GnQc1bYUgiyF DIhI0xjlHULXGdvAKBxMg5QlBA7LRugZ15hIQ3YdtqMd4fQji290gB0v/0jMyYHXIiKC fZigux0blAsoH/k1OXxeHU25D0FfYMCR/giQBeT+scyzQqs7oryRYWMgpmHrvsEXTrJZ O3qw== X-Gm-Message-State: ABy/qLbMkzlwv9UAOP+WZuFmwmn7ZANDlQV2FuwhfG648wbot/d69eqa asOg1GmVGdyMDkcHv2vdRl6otPLlvHJvnM/NnrA= X-Google-Smtp-Source: APBJJlGFQCOudNP4sI12GKhodfVYdKCwo/vBDsWhzimrXo7BI/+IFcQ1j/U1Flnv2pcjRzePagH0iaZ8Vod+F6tETYo= X-Received: by 2002:a4a:621e:0:b0:566:fbfb:6278 with SMTP id x30-20020a4a621e000000b00566fbfb6278mr1266624ooc.4.1689251957202; Thu, 13 Jul 2023 05:39:17 -0700 (PDT) MIME-Version: 1.0 References: <18e1c012-818c-44ee-ba95-c000860ac390@app.fastmail.com> In-Reply-To: Date: Thu, 13 Jul 2023 13:39:06 +0100 Message-ID: To: Deleu Cc: Brent Roose , PHP Internals Content-Type: multipart/alternative; boundary="000000000000d8622606005d9ee4" Subject: Re: [PHP-DEV] [VOTE] Interface Default Methods From: wendelladriel.ti@gmail.com (Wendell Adriel) --000000000000d8622606005d9ee4 Content-Type: text/plain; charset="UTF-8" >> I want to pitch in, agreeing with Larry's message here. >> >> - There are multiple real life use cases where the combo trait/interface >> could be replaced by interface default methods >> - Several modern language apply the technique in one form or another, so >> it's already proven to be valuable >> - There are a multitude of userland devs who'd benefit from this feature >> - The only argument I've heard against this RFC is "it goes against my >> definition of what an interface should be". I was also thought that same >> definition, and I also had to unlearn it. Just like I had to unlearn the >> "only one return per method rule" we were taught in college >> >> Brent >> > If it's a time constraint, it would be good to hear more from folks that > voted no so that it can light up hope. > If it's just because voters don't want to let us have this then it's really > just frustrating. Hey internals, I know that I'm not that active around here but I wanted to give my 2 cents I totally agree with this. We already have other languages that use this in one way or another and it's a valuable feature for all these languages. This is something that would save a lot of "boilerplate" code and workarounds using Interfaces+Traits in a lot of places. Also, this would be an opt-in thing, if you don't want to use default methods in the interfaces and keep them just acting as "plain interfaces" it won't change anything for you. I don't see why this is having such a hard time being approved. There have been other RFCs before that would really help the language to evolve and if this fails to be implemented into the language I think we should really reconsider the whole RFC process. --000000000000d8622606005d9ee4--