Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124483 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 58D551A00B7 for ; Thu, 18 Jul 2024 15:04:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1721315161; bh=wichyweVb21lwZ0pp7TQcfSokBXaamMxSj4Ex2Ciigw=; h=References:In-Reply-To:Reply-To:From:Date:Subject:To:Cc:From; b=kr+FhNHWsgECMyqaypwbCLISNBjz9C4+yNNv49a3uSaZYbpwr2NkWzl+Z9xwST8y9 jM4jC5dP6z38QHZNsBynfq6Cokt79e2hVWCJKLpUbk0MMSgfVr4c6VOu+hhGAWPI7+ xJnzIZVysKhDqxFkHN0yc55AuzokzRUPIXiCy+a5OYR9dnn09zm22wVT5LMA0WXvJD QAzVcJ7fFcRMMjq7tfbLyhPN4pXrXNa8ROUPMV4eBr4jUEQsZOTTpFUTV4U2IYz7Sz FB/vUT/UgpXW8ruLOn1OB+aLnRzUcZwhDOpa40uhMtj9rJOG/E3xyYM68eBSLdRi5f zlEsoLNf0zslw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id E34131801D8 for ; Thu, 18 Jul 2024 15:06:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 18 Jul 2024 15:06:00 +0000 (UTC) Received: by mail-ed1-f52.google.com with SMTP id 4fb4d7f45d1cf-58b0beaf703so951826a12.2 for ; Thu, 18 Jul 2024 08:04:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1721315068; x=1721919868; darn=lists.php.net; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=kAlU3cpI4qXLiivxUElf58P7z7Fk7xU+sMhz+U6PMug=; b=fJD9cNWsaZpWFOvSVqGk2sCOevF1cvMWh9YB8mAFLWeyERRq3gxFxct9ljiIO/xZw2 V1MwbiRTYWph6tod5OnFWmor2+8IniOtNrcC8osQF4BXwmqfSGMfiaXKVYx0CTefG8RT pv3738L0CYlf9uEnmvkYtrEuzcBM8aa7HcE2XikkcY0kWxUiFCbe2IwdZXmgdwj9Ll6A utLFezsJs0kJ6LpfgxvOqBRZ8s9zK9r9vW8HThZc4A+JXF1liXUIgf07PP5wqHtIEZdr 2EUADhFAAYs/VFSDYB2LC7ifmBLjVvN7A1V/mpm9tYOmjLXzaNUDaNHZ1WWyaqEXx6oq FmVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721315068; x=1721919868; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=kAlU3cpI4qXLiivxUElf58P7z7Fk7xU+sMhz+U6PMug=; b=hyh/PmncOvgfJonLEekc8XpXWu+R5mWeuGCgObydW7t9ulsAmWxh+FEtuS6/+1Sf/O bzSkXR7hxzbQm6uQd3cuC51HOik4QSXMVqLy3vtgHdAp7KmYxdX/1pN0yDt6e/18/dQm mOUjO5I3DE4iTGQVQib6qIwMYQbPHnMy0ZK6TWkWVbntQMvskr5tD9bD8vkOHr+PdvfC K3U4AcZk/yV0Vp1g64EWzxubnAO6J4LNbNlQjiWV1xEzDYAUB4+CaGcJoBIx0bmi3inP IhscXCOsPabMhq3yxxUsHCfX48jxANoJEdMyyouuGv3GfpN+H/1UGJK6p99V5wSQKQbC uLCg== X-Gm-Message-State: AOJu0YyuXlM6pZmkatuZXPrQgqW/7pjWzkPKSWVvE5hhHj3A9J86BEue 6wCeLSGaelzWpKhCf5Prvcc9k+DH/g3/mhf0KJNbMjB1hRJ+fEMR4EWCFF5cvcgtEAYx855noQV hJXh9xUmH60fIutsY0aNsax0MFDKd3g== X-Google-Smtp-Source: AGHT+IEqaD9BAqqZVVz4qO6eTzLawQ4mXYpjhaQhZ+VUILUOM41niOQnCKk0+09a/1u4+HfDc1i3wOCHCeOdwomRdPk= X-Received: by 2002:a17:906:547:b0:a72:8d2f:8594 with SMTP id a640c23a62f3a-a7a01147a55mr351170866b.27.1721315068161; Thu, 18 Jul 2024 08:04:28 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 References: <667151f4-22c5-464d-a01e-ad2a36cb767d@app.fastmail.com> In-Reply-To: <667151f4-22c5-464d-a01e-ad2a36cb767d@app.fastmail.com> Reply-To: lilybergonzat+php@gmail.com Date: Thu, 18 Jul 2024 17:04:16 +0200 Message-ID: Subject: Re: [PHP-DEV] Optional constructor body To: Larry Garfield Cc: php internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: lilybergonzat+php@gmail.com (Lily Bergonzat) On Thu, Jul 18, 2024 at 4:40=E2=80=AFPM Larry Garfield wrote: > > On Thu, Jul 18, 2024, at 2:03 PM, Lily Bergonzat wrote: > > I would love to see those improvements as well, however I am surprised > > we seem to be more inclined to push a more substantial change than a > > minor one. > > > > I feel like the more substantial one would be more likely to break > > stuff, compared to the minor one, and so I don't see why the minor one > > would be refused? > > > > That said, I am new here, and I do not yet know how things work, so it > > probably is because I lack experience. > > As you're new, I'll just note, please don't top post. :-) > > The optimal size of an RFC is a very squishy topic. There are some that = argue for "the smallest possible and no smaller," on the theory that bite-s= ized changes are easier to discuss. However, they also attract more bikesh= edding, and often a feature is not actually useful except in conjunction wi= th other parts of it. On the flipside, a tiny RFC has a hard time justifyi= ng its existence, since whatever intended follow-ups that would make it act= ually useful are never guaranteed to happen (either the authors lose intere= st or they get voted down later, etc.). Going through an RFC also has a lo= t of process overhead, and breaking one small RFC into many tiny RFCs can a= ctually take far longer than the one larger RFC. > > Conversely, an RFC can be too big to really comprehend, and then no one r= eally understands what it's doing without hours of reading and research, an= d there's so many moving parts even the authors cannot keep track of them. = On the flipside, some parts just don't make any sense on their own unless = combined with other aspects of a proposal. > > So there's really no "natural" size for RFCs generally. It will vary wit= h the topic. Also, the impact of an RFC often has very little to do with i= ts length or number of features. The RFC text for "don't require ; to end = a statement anymore" would likely be pretty short, but would also break, er= , everything. :-) > > Conversely, offering a new syntax for abbreviated constructors (as being = discussed here) would be longer than that, but the impact on existing code = would be zero (unless it's done badly). > > Also, "minor work" can end up causing problems for future work. See also= : readonly, which was intended as a "junior stepping stone" to more complex= features, but as we've found, actually makes those future features *more* = complex because it wasn't designed with those future expansions in mind. > > My own stance (which I do not claim to be universal) is that an RFC is "r= ight-sized" when it offers notable, meaningful benefit on its own, without = "holes" in the functionality, but can and should have natural "extension po= ints" where it will dovetail nicely with other, future features, which can = be planned or not. Sometimes that means a very short RFC, other times it m= eans something the size of property hooks. :-) It's really a case-by-case = situation. > > --Larry Garfield I noted the "don't top-post" earlier, and I was very confused about what it meant. I thought about it for a while and couldn't figure it out so I just figured it was not to me. I understand, now, and I think I am not top-posting right now? Thank you for giving me a nudge. Also thank you for the in-depth explanation about the RFC size. I understand your position now, and I think I mostly agree, fwiw.