Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:118226 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 87524 invoked from network); 8 Jul 2022 14:35:54 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 8 Jul 2022 14:35:54 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 2415B180384 for ; Fri, 8 Jul 2022 09:29:27 -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=-0.2 required=5.0 tests=BAYES_20,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, 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-vk1-f170.google.com (mail-vk1-f170.google.com [209.85.221.170]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Fri, 8 Jul 2022 09:29:23 -0700 (PDT) Received: by mail-vk1-f170.google.com with SMTP id q194so3344119vkb.6 for ; Fri, 08 Jul 2022 09:29:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=mALjeWQcoRc15kdv8kyOvipN7ELXOTYTh4HQ3g1qBak=; b=ZnWtHh7XbXQmdVG6tCNP1doX6FHHrtrNKZGw5EaYRL8zNtb7jgDQsu6knmomNpvSkK ybJ66WGh6E1cAckPau2eLc6v88BijEGLl83LILjhYTb40C1yVGiZpmKQ0GAVotz9YLnI h/cEGA0tg6cf4/X2D0jjW7KpsKWK01nyJs8cA0dQ8nfbWcIiLnP841r2yBBe6GZxBAt5 hfjv19eZ7jmGgKX9BCrudPQhGXb+tyz7b9jXyH1zNaWJV3fJ7wTmrkWpSe6OtjfQX+/Q g7uT1Yf7OiN/qQOMCEdwGnGGlCmnThCt5hRc0TQrUEp/NY6RfcwLf2R03/5m0ayR2IzK 7KUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=mALjeWQcoRc15kdv8kyOvipN7ELXOTYTh4HQ3g1qBak=; b=aS4IPd+WMlhsFQTHpz5dLH2EjcIep0MfgKjtg3kvJtlacGzUxzC9gMmCK3dyUrA15O XfOiVB9WuO9+Bo43LOYbhzQpDvmC5Rh5T4cFMMCOZ/LCTVsNLPx6bXEwuQLJ5L1J9WGP 3vsY66UCgbdHCygzoFws+Gc/lrYZx5nQ1XpskeGxsJBCeVM6b2CXjfNCZXw58rwO74f5 T4bRNW2EqzuKpWx5SfB5FS45AzizHoLNvvq0xtDCC+OSHLLBBEdE+/swCeKrI0LNms+8 +CYJSdaO1jScPf5p7w8q1EQfZ98ynl5OxX5w37UCC6BOQKwRJ3zSQE803Kj5d5rft7z7 9yRw== X-Gm-Message-State: AJIora+GLcXOZhyAshWMIwv4eAoF0cHWg+btWaMnSn+F/PaZ7lqRcl1i 2oGuIB4IMHZkUYA9ZGpEmvFsbHeAu09QWGLBsdHPnZU2 X-Google-Smtp-Source: AGRyM1tAsyNi6dlKlDteB2ymDElw8pPDZDzyn6jxMgGvnQLQCbAxJ/JdU0nUc1bkooxF7QYE2doToyyi0kYgrwXQ0kI= X-Received: by 2002:a1f:2889:0:b0:36c:ebbd:373a with SMTP id o131-20020a1f2889000000b0036cebbd373amr2064908vko.39.1657297762812; Fri, 08 Jul 2022 09:29:22 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Fri, 8 Jul 2022 09:29:07 -0700 Message-ID: To: shinji igarashi Cc: internals Content-Type: multipart/alternative; boundary="0000000000007088d705e34db4da" Subject: Re: [PHP-DEV] [RFC] [VOTE] Constants in traits From: jordan.ledoux@gmail.com (Jordan LeDoux) --0000000000007088d705e34db4da Content-Type: text/plain; charset="UTF-8" On Tue, Jul 5, 2022 at 2:39 PM shinji igarashi wrote: > Hello internals, > > I've started the vote for the Constants in Traits RFC: > https://wiki.php.net/rfc/constants_in_traits > > The vote will end on 19. July 2022. > > Thanks! > > -- > Shinji Igarashi > > I don't have a vote, but I wanted to address this concern about the "usefulness" of traits, since the *voting* stage is rather the wrong place to bring up the idea that the existence of the feature itself is a negative. In my view, the "correct" way to use traits is for them to be entirely self-contained. That is, if you can put the trait in *any* class, and have that trait work as intended *even if* it makes no semantic sense to do so, then it's a good trait. This is currently somewhat difficult to do in certain situations. Some of the things the trait may need must live outside the trait, such as constants. This fact promotes further problematic usage of the feature. Requiring something like class constants to be external to the trait *forces* the kind of trait designs that they have complained about. Voting "no" because you want to see the feature removed instead is counter-productive to the process of improving the language itself if the RFC in question helps correct an oversight of the original feature design as stated by the original implementer of this feature and helps to promote more non-problematic usage of the feature. I don't know how else to view that position except for wanting to keep design flaws in a feature so that you have additional arguments in the future to remove it. Jordan --0000000000007088d705e34db4da--