Re: [RFC] Typed Properties

From: Date: Tue, 10 Jul 2018 12:18:29 +0000
Subject: Re: [RFC] Typed Properties
References: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19  Groups: php.internals 
Request: Send a blank email to internals+get-102706@lists.php.net to get a copy of this message
Le mar. 10 juil. 2018 à 14:56, Zeev Suraski <vsuraski@gmail.com> a écrit : > On Tue, Jul 10, 2018 at 2:06 PM Pedro Magalhães <mail@pmmaga.net> wrote: > >> On Tue, Jul 10, 2018 at 11:33 AM Zeev Suraski <vsuraski@gmail.com> wrote: >> >>> I've also given several examples - some of them arguably quite bigger >>> than >>> this proposal - where we sat on code for a very long time (multiple years >>> even) in order for it to be included in a major version, and not a minor >>> one (phpng, JIT, FFI) even though technically they could go into the next >>> available minor. >>> >> >> Hi, >> >> I'm trying to understand this argument better but there is something I'm >> missing. Why would a feature like JIT (which would be transparent to the >> user AFAIK) need to wait for a major other than marketing reasons? >> Sorry in advance for the slightly off-topic question. >> > > Major versions are in many respects "marketing" events. They're an > indicator that big changes have happened in the language, big enough to > warrant a change in the major version. > It's a relatively recent evolution that we decided to only make it > possible to break compatibility in major versions (and it's a very positive > evolution, without a doubt), but either way - compatibility breakage has > never been the motivating factor behind a major release. Major releases > enable compatibility breakage, not the other way around. > Major features have always gone into major releases (with one notable > exception - PHP 5.3, which many argue was a de-facto major release). > > While 'marketing' always played a role in designating a certain version as > major - getting people more motivated to upgrade, bring positive vibes and > attention around the language, etc. (as was the case with 7.0) - since the > formal release process and the policy change to only allow compatibility > breakage in major versions - these compatibility breakages actually, to a > large degree, 'piggyback' on the major new features. To make it more real > - what would the migration to PHP 7 look like if it was all about the > compatibility breakages, and not the performance boosts or for that matter > - scalar type hints? Both of these (performance boosts and scalar type > hints) could easily go into 5.7 from a purely technical perspective. > > Zeev > Just to clarify my previous statement: marketing is a good reason to bump a major version. Doing so creates momentum after the release and motivation before. I just don't agree that typed properties are part of that. They are a really natural and important feature, but not one that will allow anyone to do anything new that wasn't possible before. JIT and/or async are game changers. They don't play in the same category to me. Others might disagree of course, and I don't want to minimize their importance nor the work of Nikita and Bob. Kudos to them actually. Nicolas >

« previous php.internals (#102706) next »