Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:107487 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 95145 invoked from network); 11 Oct 2019 07:38:01 -0000 Received: from unknown (HELO php-smtp3.php.net) (208.43.231.12) by pb1.pair.com with SMTP; 11 Oct 2019 07:38:01 -0000 Received: from php-smtp3.php.net (localhost [127.0.0.1]) by php-smtp3.php.net (Postfix) with ESMTP id 16FCC2D202B for ; Thu, 10 Oct 2019 22:21:05 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp3.php.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS36024 206.123.114.0/23 X-Spam-Virus: No Received: from mail1.25mail.st (mail1.25mail.st [206.123.115.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp3.php.net (Postfix) with ESMTPS for ; Thu, 10 Oct 2019 22:21:04 -0700 (PDT) Received: from [10.0.1.86] (unknown [49.48.244.201]) by mail1.25mail.st (Postfix) with ESMTPSA id 9192D6048B; Fri, 11 Oct 2019 05:20:56 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\)) In-Reply-To: Date: Fri, 11 Oct 2019 12:20:53 +0700 Cc: Chase Peeler , PHP internals Content-Transfer-Encoding: quoted-printable Message-ID: References: <5d976928.1c69fb81.db3a8.78daSMTPIN_ADDED_MISSING@mx.google.com> <413d377a-4ce1-a521-0cb4-5bb37e84c257@gmail.com> <6DFA91F7-0005-453E-A314-A5DFE1A4D3D3@newclarity.net> <82012CD7-088D-4010-922E-AD54186AE37A@newclarity.net> <67A49D41-A65F-4C07-82B2-1C19F17B2200@newclarity.net> <826c5050-6f7b-33c8-d856-60996b6210f3@gmail.com> To: Walter Parker X-Mailer: Apple Mail (2.3445.104.11) X-Envelope-From: Subject: Re: [PHP-DEV] Internals "camps" From: php-lists@koalephant.com (Stephen Reay) > On 11 Oct 2019, at 02:59, Walter Parker wrote: >=20 > On Thu, Oct 10, 2019 at 10:36 AM Chase Peeler = wrote: >=20 >>=20 >>=20 >> On Thu, Oct 10, 2019 at 1:30 PM Walter Parker = wrote: >>=20 >>>>=20 >>>>=20 >>>> No. The compromise is funding a ferry system. Or laying Internet = between >>>> them. Or a passenger pigeon mail route. >>>>=20 >>>> Sometimes compromise requires deep discussion about the motivations = for >>>> each side and coming to a lateral, mutually acceptable, solution. >>>>=20 >>>> But we'd rather not discuss motivations and just bicker about the >>> surface >>>> results. I.e., argue the X, rather than the Y, of these little XY >>> problems >>>> we're solving. >>>>=20 >>>>=20 >>>>=20 >>> Build a ferry system is alternative to building bridge. I can see = that as >>> a >>> compromise, I can also see that as a separate project created to = serve >>> demand after the the bridge project is rejected. Where a ferry = system is >>> started because there is still demand for transit, just not enough = demand >>> to pay for a bridge. >>>=20 >>> With respect to the backtick proposal, what is the "ferry" project? = Do we >>> have to come up with one before we can cancel the "bridge" project = or can >>> we cancel the "bridge" project on its own merits and then discuss a = future >>> project that solves the actual underlying problem? >>>=20 >>> "Ferry" projects might be: more/better training on PHP, better >>> documentation so that the backtick is no longer an "obscure" feature = to >>> those that don't have a shell/Unix/Perl background, tooling to warn = people >>> when they misuse this feature. >>>=20 >>>=20 >>>=20 >> To the side that says "There is absolutely no reason we need to go = to, or >> communicate with, the island in the first place," a ferry project = isn't a >> compromise. The position of the "anti-bridge" builders isn't because = they >> are against building bridges - it's because they are against spending >> resources on attempts to get to the island in the first place. The = other >> side might have valid arguments on why we need to get to the island, = but, >> just proposing different ways to get there isn't compromising with = the side >> that doesn't want to go there. >>=20 >=20 > I think you may have just created a strawman for the anti-bridge = position. > There are famous anti-bridge cases, like the Bridge to Nowhere in = Alaska > (if you don't remember, there was an island in Alaska that had 50 = people > and Senator Stevens wanted to replace the existing ferry system with a = $398 > million bridge). People complained about the bridge not because they = wanted > the islanders to to isolated, but because it was poor use of money = when > there where bigger and more urgent problems. >=20 > To bring this back to PHP, is the backtick really a urgent problem of > enough magnitude that it justifies the cost of a BC break in unknown = amount > of PHP code that has been functional for years. If this proposal = passes > (and the follow up to remove it which I'm certain will be proposed), = then > this is one that leaves people on the island as they will either be = stuck > on an old version of PHP or have to pay to update the code. This = pushes the > costs on them to solve a an existing issue that 20 years after it was > created and is now an issue because a new generation of coders, = unaware of > history, find the existing syntax not to there taste/a poor design. = Why are > we giving priority to people that haven't taken the time to educate > themselves over people that did and used programming style that used = to > common? >=20 >=20 >>=20 >>=20 >>> Walter >>>=20 >>> -- >>> The greatest dangers to liberty lurk in insidious encroachment by = men of >>> zeal, well-meaning but without understanding. -- Justice Louis D. >>> Brandeis >>>=20 >>=20 >>=20 >> -- >> Chase Peeler >> chasepeeler@gmail.com >>=20 >=20 >=20 > --=20 > The greatest dangers to liberty lurk in insidious encroachment by men = of > zeal, well-meaning but without understanding. -- Justice Louis D. = Brandeis (Sorry, wrong account previously, so didn=E2=80=99t sent to the list) Hi Walter, The RFC at the centre of this ridiculous string of analogies is about = one thing: deprecate (i.e. show a deprecation message) about the = backtick operator.=20 The RFC specifically doesn=E2=80=99t lay out a timeline for actual = removal, it doesn=E2=80=99t even hint at =E2=80=9Cwell it=E2=80=99ll = just be automatically removed=E2=80=9D. So this RFC breaks *nothing*.=20 Yes, it does lead to the situation where it=E2=80=99s likely that a = followup RFC will propose removing the (then) deprecated feature - = perhaps 9.0, perhaps it=E2=80=99ll be discussed pre-9.0, and held off = until 10.0? But any such change will then require *another* vote, with = another round of discussions and no doubt ridiculous analogies. And at that time, after several years of warnings about deprecation, = Nikita or someone else will likely pop up with some analysis of projects = to show usage *at the time*. If the only reason to keep a dangerous operator is =E2=80=9Cwell a small = subset of people use it=E2=80=9D, marking it as *deprecated* is how you = signal to those people that the feature will likely be removed in a = future version. The argument about =E2=80=9Cshell style scripts=E2=80=9D that are on a = server which constantly gets updated to the newest release but never = gets any maintenance to the scripts is a ridiculous fantasy. There is zero chance someone is dist-upgrading from one release to the = next through enough versions that they get to one where the = distro-provided php is such that backticks are actually removed, and yet = the only thing that breaks is the backticks. Cheers Stephen=