Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:115790 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 93296 invoked from network); 24 Aug 2021 18:10:00 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 24 Aug 2021 18:10:00 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F3A331804AD for ; Tue, 24 Aug 2021 11:43:58 -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.0 required=5.0 tests=BAYES_20,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE 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-ua1-f43.google.com (mail-ua1-f43.google.com [209.85.222.43]) (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 ; Tue, 24 Aug 2021 11:43:57 -0700 (PDT) Received: by mail-ua1-f43.google.com with SMTP id 37so9048250uau.13 for ; Tue, 24 Aug 2021 11:43:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=basereality-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=Td8BEn7J+cdyxiyU5s/rF6eo+oZFPbkaFudRioX9eGk=; b=C/mf5pSOcB6F2LodEJ65VWXxQgfySAVZwNlAkLzkEVsbRlz68ULhL6Wby4uuOsGXfO GbHgPyFWbf1P/K+e2zDh2+DNkKox2CjlSqd5oUKs9KfIyIpIph5fTskkyJG58DqyaGrV 82gOsbPejGUdnLae93hOPC6+6+b6lmGyH4BiDC2Eg5RHJwAPDebv0dzFbxxGtUr7/roA kmODk+OYP3RVLmCrAqsHKw6ey9PQFQEqoAM6oq0FTPZr0PYAMLipq81pdjA7q3I2hmUb hDY9nrfuk51FNhG9M6r8/wL+AW/6Ff+3RxqGll6FOPGWF9ueazbq3ZrnwkbgGbwJ5/wn zz3A== 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:content-transfer-encoding; bh=Td8BEn7J+cdyxiyU5s/rF6eo+oZFPbkaFudRioX9eGk=; b=hWigMN2Ji07bK7ADXShbvUF5Yqc5BvPkDJ1LnR2X4Ax8RkDLF1Alblax9D3knopDM4 k0EQrN1WE7BE6KQ+aUI/EN8dunqKQqt1DQC8NjAdMoHfC5lZ5F1d0djyVQX5p2FfPc5i BcevXJ/1K7EqitFev7tsq/K2EN15jnv/VHMkGnFAWmW+d7kTt+fbWBU+JW9g8g30mcu2 PnaGf1DYuBG56gXFVmrQeRNcEJOrMQhoZUOVnHmXLQ5+FaXWl/ZaOII0GzXqrRk3HyYJ NHHiY1PwI8MRy2yZqoFkOnwf8YdJH/9Rbvyt3g0vELVyPOjvJDu1Cjnaqynl01Vu9BuT V8ag== X-Gm-Message-State: AOAM533BwFay+5RywHrUqxNDNBbfTRDxvu2XByyvAIqHocESDCQulRaX 6vruFPYJx7jZ8o3cO2EuHvayZj1GfqZp1ik6SPsLtQ== X-Google-Smtp-Source: ABdhPJyNO3JijGnM8NGZKZeZeO1GxhaXwWYcbl1UKAkE+K+2cKaBKNTHuQ+UyKdXh+ukjGuQbppTnjpkJaDlRzCsJjg= X-Received: by 2002:a05:6102:1252:: with SMTP id p18mr17245968vsg.1.1629830636434; Tue, 24 Aug 2021 11:43:56 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Tue, 24 Aug 2021 19:43:45 +0100 Message-ID: To: Pierre Joye , tobias.nyholm@gmail.com Cc: PHP internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] Guidelines for RFC post feature-freeze From: Danack@basereality.com (Dan Ackroyd) Pierre Joye wrote: > Many additions went through while being incomplete. > ... > For almost all recent RFCS > related to syntax, arguments/return types or properties, I don't think > it justifies being added while being incomplete. I think you are remembering how changes were made to PHP through rose tinted glasses. Pretty much all of the improvements to PHP's type system were 'incomplete' but they were still huge chunks of work, and some of them only just got accepted. Suggesting that (other) people need to do more work to satisfy the level of quality you want in an RFC is a good way of stopping any major progress from being achieved. Seeing as a lot of RFCs that improve PHP's type system seem to be the last RFC before someone decides to not bother contributing any more, I strongly suggest not trying to make it more difficult to get improvements made. Pierre Joye wrote: > A library or framework (main users of most of these features) may or > may not implement the given addition, requiring say 8.1, and yet again > require 8.2 .... > > What is one more year then? :) If a library thinks a feature is 'incomplete' they can hold off using it, while other people who think it's useful enough can use it earlier. After all, what is one more year then? Pierre Joye wrote: > I don't think we are not able to understand complex RFCs. The intersection types RFC was pretty clear that it didn't support union ty= pes. This limitation could have been discussed as part of the RFC discussion, and George would have explained his choice, namely that implementing the RFC was going to be difficult and so he wanted to limit the scope of the RFC*. The fact that this limitation in scope apparently wasn't understood by some people who apparently have strong feelings about it, suggests that people don't always understand what is being discussed or voted on. Tobias Nyholm wrote: > then the discussion and the vote should not consider =E2=80=9Cif it is to= o late=E2=80=9D > or =E2=80=9Cthis is rushed=E2=80=9D. This is a really bad idea. Previously (but not recently), some of the more heated RFC discussions moved from being about the RFC to being about what are "right" and "wrong" reasons for voting. That type of discussion very quickly descends into either name calling, or people just refusing to take part in discussions. If nothing else, how would you 'prove' that someone has voted for the 'wrong reason', and so needs to have their vote discounted? cheers Dan Ack * To be clear, the implementation was very difficult, and George spent a huge amount of time on it. I suggest reviewing the implementation if you aren't familiar with it: https://github.com/php/php-src/commit/069a9fa5e4478c7044cb6432258cfe207d10a= 202 and definitely before saying that leaving out union types was an 'oversight'.