Vývojáři jazyka PHP s myšlenkou na vytvoření nového dialektu P++, který pomůže posunout jazyk PHP na novou úroveň. V současné podobě vývoj PHP brání potřeba zachovat kompatibilitu s existující kódovou základnou webových projektů, což omezuje vývojáře. paralelně začít vyvíjet nový dialekt PHP — P++, jehož vývoj bude probíhat bez ohledu na nutnost zachovat zpětnou kompatibilitu, což umožní zavést revoluční vylepšení a zbavit se zastaralých konceptů.
Nejvýraznějšími změnami v P++ bude přechod k používání přísné typizace, zbavení se používání tagů „<?“ a ukončení podpory array() ve prospěch syntaxe „[]“ a zákaz používání globálního prostoru jmen pro funkce.
Pro projekt bylo předběžně zvoleno jméno P++ (PHP Plus Plus) podle analogy se C++. PHP a P++ bylo navrženo vyvíjet bok po boku a používat jednotný runtime. Nesouvisející s syntaxí nízkoúrovňové komponenty, datové struktury, rozšíření a optimalizace výkonu budou současně vyvíjeny pro PHP i P++, přičemž v režimu PHP bude zachována zpětná kompatibilita, zatímco v P++ bude možné experimentovat s evolucí jazyka.
Kód v PHP a P++ bude možné míchat v jedné aplikaci a spouštět jedním interpretem, ale metoda rozdělení kódu zatím nebyla určena. Přitom vývojáři se nevzdávají plánů na rozvoj větve PHP 8, ve které přidat JIT kompilátor a prostředky pro zajištění přenositelnosti s knihovnami na C/C++. Projekt P++ je prozatím ve fázi diskuse návrhu. Hlavním zastáncem P++ je Zeev Suraski (), jeden z lídrů komunity vývojářů PHP, spolu zakladatel společnosti Zend Technologies a autor enginu Zend Engine.
Z oponentů lze zmínit obavy z nedostatku zdrojů pro prosazení projektu (v režimu plného úvazku na PHP pracují pouze dva vývojáři), možnost fragmentace komunity, soutěž s již existujícím jazykem (PHP s statickou typizací), zkušenost projektu HHVM (nakonec podporovat PHP a Hack v jednom runtime), potřeba změny sémantiky pro přísnou typizaci, nebezpečí stagnace PHP a rozvoje novinek pouze v P++, otázky ohledně organizace soužití a interakce PHP a P++ (netriviálnost konverze kódu PHP na P++ (syntax se může rozcházet natolik, že bude nutné přepsat aplikaci), nekompatibilita P++ s existujícími nástroji pro PHP a potřeba přesvědčit autory nástrojů, testovacích systémů a IDE, aby zajistili podporu nové edice).
Zdroj: opennet.ru
