Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:111540 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 7588 invoked from network); 15 Aug 2020 16:36:35 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 15 Aug 2020 16:36:35 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 54EFD1804C2 for ; Sat, 15 Aug 2020 08:37:00 -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.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DOS_RCVD_IP_TWICE_B, FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from mail-io1-f48.google.com (mail-io1-f48.google.com [209.85.166.48]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sat, 15 Aug 2020 08:36:59 -0700 (PDT) Received: by mail-io1-f48.google.com with SMTP id g14so13656859iom.0 for ; Sat, 15 Aug 2020 08:36:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=+J7dRoWEo8cz1cKpVEA4ZDvO0W+cUm3hjeawR3WTxT4=; b=CJSUQqEpunVl3u0B1G8xpeYSzTUN+Q/h/u10OPYmXXpjDw6mtL2Z/kO3x8ocUKy4yo 1T+v4DKSppjCk5ViHTubA21QLfnxneGvcrpXIIUm646uNRG6mitf3vlKMwkv6Ph0YIyS Cby0MECBtnYAjan1C8A+0P612F5KhwAm4OoLmIQ7CKx7e8WP1J59teWhgE9qgZ5LceqW m3NDIdUB5IFmhbLBF09lTfDJDrWeumSUM55B8wjjTdBaBaCOLBve7rbcKmbvmjKcYe2c EuwyzfYJ4lGQouE26UxOSJO8xTtgGyv5Hah+x2L/WWQohsZx7L3i3gMe3Zn9LvDQ+saL +9hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=+J7dRoWEo8cz1cKpVEA4ZDvO0W+cUm3hjeawR3WTxT4=; b=bxNMqt5qex/1wj1RD1jMp87K/tiBuXU2zUtdTKmihGCZhDr+5F3j1RiLtqV7Zhqk8J pZ0wuuVAt8qIX88W+dubpoBQAYDjYkd5ZTci61sqAS11IrAEEEgJjo2Wfmdog4dpxc9h Xey3rRjMX+taTPbkhKkbapcASpI1YigNO7tyQ0fHVAXs4P2QUpaL0w0egJ9Tu67FnkEh Pmdqh73ChnVE3hLXK4gDH7jvLZ+mXRpVhvhqBKrbDBVk2wR0by8Aq/dbB+SjUoLukwdk WS/Yk33k8xUJtuv7S6TSHC0Cf/1loxwKAvgETkLlODjhD0zcB+WgetHqqRfUiEU1WI+S kZsA== X-Gm-Message-State: AOAM531Yn0iDHb/KoYh3RI1vnLYqigE600/dNxgew0D6uUHozdeaKPVT 7MXAyKAEI+4Gd03XqaoQndEuSAN5zB4= X-Google-Smtp-Source: ABdhPJxLRqdrE7XxmIr1uhtTOjtRPPmoWoUgg9sm4AIoGCNQtmaxto60vC3M0wu4Mp7lzALLv7B/cQ== X-Received: by 2002:a5d:824f:: with SMTP id n15mr5892104ioo.95.1597505816870; Sat, 15 Aug 2020 08:36:56 -0700 (PDT) Received: from mail-io1-f48.google.com (mail-io1-f48.google.com. [209.85.166.48]) by smtp.gmail.com with ESMTPSA id t14sm5898310ios.18.2020.08.15.08.36.55 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 15 Aug 2020 08:36:56 -0700 (PDT) Received: by mail-io1-f48.google.com with SMTP id v6so13476586iow.11 for ; Sat, 15 Aug 2020 08:36:55 -0700 (PDT) X-Received: by 2002:a6b:5a04:: with SMTP id o4mr6161039iob.171.1597505815378; Sat, 15 Aug 2020 08:36:55 -0700 (PDT) MIME-Version: 1.0 References: <5cc837df-ab47-628a-d29b-46d7933be973@gmx.net> <3A7CECC3-CDEE-4852-BF4B-4EC7CA1BD538@pmjones.io> <7d6c42a4-53cd-5e38-4ffc-02fe490d66a3@gmx.net> In-Reply-To: Date: Sat, 15 Aug 2020 16:36:17 +0100 X-Gmail-Original-Message-ID: Message-ID: To: tyson andre Cc: Andreas Leathley , "internals@lists.php.net" Content-Type: multipart/alternative; boundary="000000000000a7160305acec4e69" Subject: Re: [PHP-DEV] [VOTE] Shorter Attribute Syntax Change From: phpmailinglists@gmail.com (Peter Bowyer) --000000000000a7160305acec4e69 Content-Type: text/plain; charset="UTF-8" On Sat, 15 Aug 2020 at 16:07, tyson andre wrote: > I also want a revote. > I do too. Partly because of the rules, but mostly because this discussion has gone on so long I am now less clear about what is an "ending delimiter" and why it matters than before. And whether the begin/end delimiters are part of each attribute, or used once for all attributes. For example, https://wiki.php.net/rfc/shorter_attribute_syntax#lack_of_nested_attributes. Derek and Benjamin's RFC shows no nested examples. Are nested attributes even a thing now or did they disappear in an earlier RFC? If they are, they should be featured. On another topic, parentheses and ending delimiters. I have heard Derek's distinction, but if we're after a syntax with an ending delimiter then I would propose compulsory parentheses, which means all syntaxes @@, @:, you name it, would have one. If that's unacceptable for solving the "ending delimiter" issue, then document it in the RFC. It feels there is a lot bound up in the lexing, either by PHP or by how different people read and understand code. I'm stabbing in the dark for reasons because it's not been explicit - and it ought to be. This is not a comprehensive RFC, and while I'm ambivalent about syntax (having swung between <<>>, @@ and #[] over time) I do not appreciate feeling that it's being bounced through. Room 11 is not this list, and discussions that happen there (as earlier messages talk about) provide background and context that is missing when reading this RFC and not having been part of those discussions. P.S. the RFC introduction also states that *"The main concern is that @@ > has no ending symbol > and it's inconsistent with the language that it would be the only > declaration or statement > in the whole language that has no ending termination symbol."* > I had mentioned this in (https://externals.io/message/111312#111335) > that this statement failed to give concrete examples of problems (e.g. > parsing ambiguities) > that the authors believe could be caused in 8.0 or in future releases. > I'd also stated that I think an attribute is neither a declaration nor a > statement, > but that could be resolved by including the definition of > declaration/statement used by the authors. > There are various syntaxes in PHP with no ending symbols (`clone`, > `public`, `yield`). > (I doubt changing this will make a difference since many people prefer > `#[]`/`@[]` for other reasons, > but still consider that sentence to be misleading.) Agreed. Peter --000000000000a7160305acec4e69--