<story><title>Three Tales of Second System Syndrome</title><url>http://blog.brentlaabs.com/2015/05/three-tales-of-second-system-syndrome.html</url></story><parent_chain></parent_chain><comment><author>ceronman</author><text>&lt;p&gt;&lt;pre&gt;&lt;code&gt;    It just might be possible that Perl 6&amp;#x27;s crazy long development process can
    produce the best-adopted second system around
&lt;/code&gt;&lt;/pre&gt;
Unfortunately, I don&amp;#x27;t share the same optimism as the OP. In the real world, adoption is not only driven by how cool a language is, but the ecosystem of tools and developers around it. There are lots of Perl 5 codebases which won&amp;#x27;t be migrated because it&amp;#x27;s too expensive.&lt;p&gt;The true lesson learned for language developers is: Don&amp;#x27;t break backwards compatibility. Ever.&lt;p&gt;The Python community made this mistake, and they acknowledge it. Guido said this won&amp;#x27;t happen again. But at least for the case of Python 3, the number of breakages is relatively small, and the migration from 2 to 3 while tedious, it&amp;#x27;s not that hard. Even so, the migration of the whole ecosystem has been really really slow. But I think in the end the community will move.&lt;p&gt;The Perl case, on the other side, is much worse. Migrating a relatively complex project from 5 to 6 is extraordinarily hard. It&amp;#x27;s probably the same as a whole rewrite. Also, the community is divided, with some developers keeping the improvement of Perl 5, fixing bugs and adding new features. There is no incentive for migration.&lt;p&gt;If the migration has been so slow for Python 3, which had a much smaller barrier, I don&amp;#x27;t see how it could be better for Perl 6.&lt;p&gt;New languages are able to develop a new ecosystem when they introduce innovative features, e.g. Rust. But Perl 6 while being a nice language, doesn&amp;#x27;t seem to have any killer feature compared to mainstream languages.</text></comment>
<story><title>Three Tales of Second System Syndrome</title><url>http://blog.brentlaabs.com/2015/05/three-tales-of-second-system-syndrome.html</url></story><parent_chain></parent_chain><comment><author>TazeTSchnitzel</author><text>&amp;gt; Well, after a little over six years of development, we discovered that we were never going to see a PHP 6 at all. Having seen how long Perl 6 had taken, and how long PHP 6 was taking, the number 6 is associated with failure. So they cancelled PHP 6 and voted to change the name to PHP 7.&lt;p&gt;Uh, what? Did the author do the most &lt;i&gt;basic&lt;/i&gt; of research?&lt;p&gt;PHP 6 was a real thing, a development branch. But it dragged on for years.&lt;p&gt;Due to delays, they made an interim release in the 5.x series, PHP 5.3. It backported some stuff from 6.&lt;p&gt;Eventually, PHP 6 was killed off because it just wasn&amp;#x27;t going to work. So they made another 5.x release, PHP 5.4, backporting more stuff from 6, and adding some other features.&lt;p&gt;After that, with PHP 6 dead and gone, work focussed on the PHP 5.x series again. So out came PHP 5.5 (2013) and PHP 5.6 (2014).&lt;p&gt;During this time, some people did some experiments and realised it was possible, by breaking internal (not userland) compatibility, to greatly improve PHP&amp;#x27;s performance. This project became phpng. Since it would break so many (internal) things, they decided that if it should be merged into PHP, it needed to go into a new major version.&lt;p&gt;It was after this that the ridiculous version number vote was held. I don&amp;#x27;t see why we ever had that debate, really. PHP 6 was a thing and was killed off, re-using the version number was silly. Anyway, the number chosen was PHP 7.&lt;p&gt;Fast forward to the present day: PHP 7 has gone into feature freeze and should be released in a few months. Alongside the performance improvements of phpng, it has some other new features developed independently, and includes a few deliberate backwards-compatibility breaks.&lt;p&gt;tl;dr: the time line goes: 5.2 release, work begins on 6.0, 5.3 release, 6.0 killed off, 5.4 release, 5.5 release, 5.6 release, 7.0 in development.&lt;p&gt;Edit:&lt;p&gt;&amp;gt; JIT to the Zend engine&lt;p&gt;...what? No, PHP 7 does not have that.&lt;p&gt;&amp;gt; Asynchronous IO and functions&lt;p&gt;...PHP 7 doesn&amp;#x27;t have that either?&lt;p&gt;&amp;gt; Standalone Multi-threading Web Server (HHVM)&lt;p&gt;...huh?&lt;p&gt;&amp;gt; phpclasses.org&lt;p&gt;Oh, so that&amp;#x27;s why the author is so confused.</text></comment>