Re: Ruminations on PHP 5++

From: Date: Fri, 24 Jan 2014 16:31:35 +0000
Subject: Re: Ruminations on PHP 5++
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to internals+get-71517@lists.php.net to get a copy of this message
On Fri, Jan 24, 2014 at 5:18 PM, Andrea Faulds <ajf@ajf.me> wrote: > > > On 24/01/14 16:18, Lester Caine wrote: >> >> Adam Harvey wrote: >>> >>> Adam, who loves starting a good flame war on a Friday. >> >> It would perhaps be nice to avoid the same mistakes that Python made >> when re-factoring 3.0 and not taking the rest of the user base with >> them. The level of breaking of BC needs to be carefully balanced? >> And I still think that 5.4 should have been a major hike which would >> have allowed a little more flexibility then. > > > There is a lot that PHP's 5/6 transition can learn from Python's 2/3 > transition. One might be, IMO, not to backport any new features. Otherwise > people will simply keep using 2/5 instead of 3/6, due to the features also > being available there. Big +1 , Python 2 to 3 should be taken care of when thinking about PHP5++. Also, we should remember what we actually did from PHP4 to PHP5. We changed the objects management (that was the biggest change), and even with a compatibility mode INI settings which was pretty hard to develop from an internal POV, it still took AGES for people to migrate from 4 to 5, mainly because of "compatibility issues" regarding objects, and because of the new error reporting system showing much more messages on badly designed code in PHP5 than it did in PHP4. I wasnt an internal guy at this time, but I still remember 2004 pain. Everybody felt enthusiast , PHP 5.0 was a pretty nice product , but it took about 5 to 7 years to finally jump to 5.X branch :-p Times have changed, PHP and all its ecosystem is nowadays more mature than before, but still... We must not do any mistake for PHP6 , nobody will pardon a mistake. Every wrong step or decision could lead to PHP's death , we really have to take care of everything. Julien

« previous php.internals (#71517) next »