Aug 30, 2019

United we stand, divided we fall: proposal to split PHP into two separate languages is unanimously rejected

A proposal suggesting that PHP should be separated into two languages has been rejected by all fifty-three PHP members that govern the future of PHP development. The original proposal requested that a new PHP dialect, dubbed P++, be created to add new features and improvements to modernize the PHP language. Development would continue on both PHP and P++, with PHP preserving backwards compatibility with the entire PHP ecosystem.

PHP is a divisive language, with many developers bemoaning its slow evolution. While many developers prefer PHP as a dynamic language with an emphasis on simplicity, other developers that support the creation of P++ hope to create a dialect that is strictly typed, a significant deviation from PHP’s long-standing philosophy. Creating a new strictly typed dialect, according to these developers, would help them add more complex and advanced features. P++ would also be able to carry on development with less baggage, removing old or difficult to maintain features of PHP in favor of faster innovation.

P++ would live alongside PHP and share much of the same code, but would likely face a number of serious obstacles. The PHP development team would still need to maintain two versions of certain parts of the codebase. And, while developers would install both PHP and P++ as a single language, most development teams would likely want to pick one for most of their development. For teams with legacy PHP code, converting existing PHP code to P++ would be a nontrivial task and PHP tools would likely not support P++ at launch.

PHP has a strong bias for backwards compatibility, leading many developers to question why PHP is evolving so slowly. As the harbinger of modern web development, PHP fueled the dominance of developer tools like WordPress, a PHP-based tool that now powers more than a third of all websites. With the rise of JavaScript, pervasiveness of Node.js, and growing popularity of static websites, PHP developers have begun looking for new ways to modernize PHP and prepare the language for the next wave of web development innovation. P++ is a novel concept and, while impractical in the short-term, sets a precedent for more creative solutions in the long-term.

Want to get more of these in your inbox?

Subscribe for weekly updates from the Software team.