Twórcy języka PHP zaplanowali stworzenie nowego dialektu P++, który pomoże wynieść język PHP na nowy poziom. Obecny rozwój PHP utrudnia konieczność zachowania zgodności z istniejącą bazą kodu webowych projektów, co ogranicza twórców. Równocześnie chcą rozpocząć rozwój nowego dialektu PHP — P++, którego opracowanie będzie prowadzone bez konieczności zachowania zgodności wstecznej, co umożliwi wprowadzenie rewolucyjnych udoskonaleń i pozbycie się przestarzałych koncepcji.
Najbardziej zauważalnymi zmianami w P++ będzie przejście na ścisłe typowanie, zrezygnowanie z używania tagów "‹?", zaprzestanie wsparcia dla array() na rzecz składni "[]" oraz zakaz występowania globalnej przestrzeni nazw dla funkcji.
Projekt wstępnie nazwano P++ (PHP Plus Plus) na wzór C++. PHP i P++ mają być rozwijane równolegle i korzystać z jednego środowiska uruchomieniowego. Niezwiązane ze składnią komponenty niskiego poziomu, struktury danych, rozszerzenia i optymalizacje wydajności będą opracowywane zarówno dla PHP, jak i P++, przy czym w trybie PHP zachowana zostanie zgodność wsteczna, a w P++ będzie można eksperymentować z ewolucją języka.
Kod w PHP i P++ będzie można mieszać w jednej aplikacji i uruchamiać jednym interpretem, jednak metoda oddzielania kodu nie została jeszcze określona. Równocześnie twórcy nie rezygnują z planów rozwoju gałęzi PHP 8, w której zostanie dodany kompilator JIT oraz narzędzia zapewniające przenośność z bibliotekami w C/C++. Projekt P++ jest wciąż na etapie dyskusji propozycji. Głównym zwolennikiem P++ jest Zeev Suraski (), jeden z liderów społeczności deweloperów PHP, współzałożyciel firmy Zend Technologies oraz autor silnika Zend Engine.
Z przeciwników można wskazać obawę o niedobór zasobów na realizację projektu (przy pełnoetatowej pracy nad PHP zaangażowani są tylko dwa deweloperzy), możliwość fragmentacji społeczności oraz konkurencję z już istniejącym językiem (PHP ze statycznym typowaniem), doświadczenie projektu HHVM (ostatecznie utrzymywać w jednym środowisku PHP i Hack), potrzeba zmiany semantyki dla ścisłej typizacji, niebezpieczeństwo stagnacji PHP i rozwijania innowacji tylko w P++, pytania dotyczące organizacji współistnienia i interakcji PHP oraz P++ (złożoność konwersji kodu PHP do P++ (słownik może się rozjechać na tyle, że potrzebne będzie przepisanie aplikacji), niekompatybilność P++ z istniejącymi narzędziami dla PHP oraz konieczność przekonania autorów narzędzi, systemów testowania i IDE do zapewnienia wsparcia dla nowej edycji).
Źródło: opennet.ru
