A PHP nyelv fejlesztői ötlettel álltak elő egy új P++ dialektus létrehozásához, amely új szintre emelheti a PHP nyelvet. Jelenlegi formájában a PHP fejlődésének gátat szab a meglévő webprojektek kódalapjával való kompatibilitás megőrzésének szükségessége, amely a fejlesztőket korlátozott keretek között tartja. Megoldásként párhuzamosan megkezdenék egy új PHP dialektus — P++ fejlesztését, amelyet arról a feltételről fognak fejleszteni, hogy nem szükséges megőrizni a visszafelé kompatibilitást, ami lehetővé tenné, hogy forradalmi fejlesztéseket vezessenek be a nyelvbe, és megszabaduljanak az elavult koncepcióktól.
A P++ legkiemelkedőbb változásai közé tartozik a szigorú tipizálás alkalmazásának bevezetése, a „‹?” tagek eltávolítása, az array() szintaxis helyett a „[]” szintaxis használatának megszüntetése és a globális névtér funkciók számára történő használatának tilalma.
A projekt előzetesen a P++ (PHP Plus Plus) nevet kapta a C++ analógiájára. A PHP és a P++ párhuzamos fejlesztését javasolták, egy közös runtime használatával. A szintaxissal nem összefüggő alacsony szintű komponensek, adatstruktúrák, kiterjesztések és teljesítményoptimalizálások egyidejűleg lesznek fejlesztve a PHP és a P++ számára, de a PHP módban megmarad a visszafelé kompatibilitás, míg a P++-ban kísérletezni lehet a nyelv fejlődésével.
A PHP és a P++ kód keverhető lesz egy alkalmazáson belül, és egy interpreterrel futtatható, de a kód elválasztásának módszere még nincs meghatározva. Ezzel egyidejűleg a fejlesztők nem mondtak le a PHP 8 ágának fejlesztési terveiről, amelyben JIT-kódoló beépítése és eszközök biztosítása a C/C++ könyvtárakkal való hordozhatóság érdekében szerepel. A P++ projekt jelenleg javaslattételi szakaszban van. A P++ fő támogatójának Zeev Suraskit tekinthetjük (), a PHP fejlesztői közösség egyik vezetője, a Zend Technologies társalapítója és a Zend Engine motor szerzője.
A az ellenzőktől megemlíthető a projekt előmozdításához szükséges források hiányától való félelem (a PHP-n dolgozó teljes munkaidős fejlesztők száma mindössze kettő), a közösség fragmentálódásának lehetősége, a már létező Hack nyelvvel való verseny lemondott a további fejlesztésről támogatni egy runtime környezetben a PHP-t és a Hack-et), a szigorú típusellenőrzéshez szükséges szemantikai módosítás, a PHP stagnálásának veszélye és az újdonságok fejlesztése csak a P++-ban, a PHP és a P++ kooperációjának és kölcsönhatásának megszervezésével kapcsolatos kérdések (a PHP kód P++-ba való konvertálása nem trivialis feladat (a szintaxis olyan mértékben eltérhet, hogy az alkalmazás újraírása szükségessé válik), a P++ inkompatibilis a meglévő PHP eszközökkel, és meg kell győzni az eszközök, tesztelő rendszerek és IDE-k fejlesztőit a támogatás biztosításáról az új kiadás számára).
Forrás: opennet.ru
