Re: [PHP-DEV] Re: Bringing Peace to the Galaxy

  106460
August 8, 2019 23:08 zeev@php.net (Zeev Suraski)
On Fri, Aug 9, 2019 at 1:25 AM Mark Randall <markyr@gmail.com> wrote:

> On 08/08/2019 21:17, Zeev Suraski wrote: > > [... and not in the Sith Lord kind of way.] > > Thoughts? > > The idea of PHP being held hostage to eternal backwards compatibility > fills me with absolute dread. > [snip]
> If you're not going forward, you're falling behind, and sometimes going > forward requires sacrifice. > > Mark,
I'd like to state three things, and ask another: 1. The differences between the internals@ schools of thought aren't limited to just downwards compatibility issues alone - these were highlighted because of the recent short tags discussion, but that's just one aspect out of several - which I mentioned in my message. 2. Different people have different preferences. There's a reason that not everyone is using the same language, or have the same mobile phone or the same car. Something it's not 'forward' or 'backwards' - it's about 'different'. Is C++ better than C? Many would argue that it is, while others will argue that it's not. Both can be correct, it's ultimately not only a matter of objective truths, but also subjective perceptions, preferences and the tasks at hand. 3. Putting your apparent personal bias against backwards compatibility aside - if P++ goes in the directions you're hoping for - towards giving you the goodies on your wish list, why would you care if PHP still existed without these new changes/features? Zeev
  106462
August 8, 2019 23:37 matthewmatthew@gmail.com (Matthew Brown)
On Thu, 8 Aug 2019 at 19:08, Zeev Suraski <zeev@php.net> wrote:

> 3. Putting your apparent personal bias against backwards compatibility > aside - if P++ goes in the directions you're hoping for - towards giving > you the goodies on your wish list, why would you care if PHP still existed > without these new changes/features? > > Zeev >
Another userland developer here. I'd just like to share my abject terror of the idea that the language might split into two. Having made a toy transpiler (https://github.com/hacktophp/hacktophp) from Hack code to PHP, I don't think that's a good way forward either. The Python 2 => 3 migration is a good example of a language maintaining its popularity despite an uncomfortable upgrade, and I think that bump has helped secure Python's relevance for the next decade. Though PHP is uncool, it's still popular. Have faith that the community won't abandon PHP if the language improves.
  106463
August 8, 2019 23:43 truth@proposaltech.com (Todd Ruth)
> ... > 3. Putting your apparent personal bias against backwards compatibility > aside - if P++ goes in the directions you're hoping for - towards giving > you the goodies on your wish list, why would you care if PHP still existed > without these new changes/features? > > Zeev
I just want to express a personal bias - joy at reading the proposal. Our php code goes back to approx 2002. We did get a performance improvement moving to PHP7 and it has allowed us to integrate with third party modules that were not compatible with PHP5, but it also required many, many hours that were not spent moving our application forward in other ways. I think the #1 reason for changing PHP versions for us is security policy. If a PHP version is "end of life" we must move on, no matter how much pain it causes and how perfectly acceptably everything was functionally running on the older version. The idea of having code that works be allowed to continue to work is very, very appealing. I don't want people who want to go in bold new directions to be held back; the proposal seems like something that would help me sleep more peacefully while allowing the adventurous to proceed. Thanks! - Todd (usually quiet here)
  106464
August 8, 2019 23:52 markyr@gmail.com (Mark Randall)
On 09/08/2019 00:08, Zeev Suraski wrote:
> 2. Different people have different preferences. There's a reason that not > everyone is using the same language, or have the same mobile phone or the > same car. Something it's not 'forward' or 'backwards' - it's about > 'different'. Is C++ better than C? Many would argue that it is, while > others will argue that it's not. Both can be correct, it's ultimately not > only a matter of objective truths, but also subjective perceptions, > preferences and the tasks at hand.
I'd say C++ gives you extra tools to do the job you want to do, and to do them quicker, and safer (std::string vs char[]).
> 3. Putting your apparent personal bias against backwards compatibility > aside - if P++ goes in the directions you're hoping for - towards giving > you the goodies on your wish list, why would you care if PHP still existed > without these new changes/features?
I'm not inherently biased against BC. But it doesn't exist in isolation, in my mind I have to weigh the benefits of BC with the benefits that breaking BC could bring. IMO, long term, the former is greatly outweighed by the latter. The thing is, I don't see PHP diverging in the way you suggest. I suspect it would end up being versioned within the same application, even though I suspect that would be much harder to pull off, it may end up that it's not actually possible. I was trying to think of something which could easily break if passed between two versions, and something which immediately came to mind was union types and reflection, a method which returned one string would need to return an array, or just the first, and so on. A "separate" version would certainly be easier. The ability to rip out everything which wasn't kept would no doubt simplify a lot of things, but I agree with Nikita's point that it only kicks things down the line until the next break. I think side-by-side engine versions are likely going to be the end result if it's possible. My heart says "clean break" my head says "side by side". Mark Randall