Разработчики языка PHP выступили (https://externals.io/message/106503) с идеей по созданию нового диалекта P++, который поможет вывести язык PHP на новый уровень. В текущем виде развитию PHP мешает необходимость сохранения совместимости с имеющейся кодовой базой web-проектов, что удерживает разработчиков в ограниченных рамках. В качестве выхода предлагается (https://wiki.php.net/pplusplus/faq) параллельно начать развивать новый диалект PHP - P++, разработка которого будет вестись без оглядки на необходимость сохранения обратной совместимости, что позволит добавить в язык революционные улучшения и избавиться от устаревших концепций.Наиболее заметными изменениями в P++ станет переход к использованию строгой типизации и избавление от применения тегов "‹?". Для проекта предварительно выбрано имя P++ (PHP Plus Plus) по аналогии с С++. PHP и P++ предложено развивать бок о бок и использовать единый runtime. Не связанные с синтаксисом низкоуровневые компоненты, структуры данных, расширения и оптимизации производительности одновременно будут разрабатываться для PHP и P++, но в режиме PHP будет сохраняться обратная совместимость, а в P++ можно будет экспериментировать с эволюционированием языка.
Код на PHP и P++ можно будет смешивать в одном приложении и выполнять одним интерпретатором, но метод разделения кода пока не определён. При этом разработчики не отказываются от планов по развитию ветки PHP 8, в которой планируется (https://www.opennet.ru/opennews/art.shtml?num=50428) добавить JIT-компилятор и средства для обеспечения переносимости с библиотеками на C/C++. Проект P++ пока находится на стадии обсуждения предложения. Основным сторонником P++ является Зеев Сураски (Zeev Suraski (https://en.wikipedia.org/wiki/Zeev_Suraski)), один из лидеров сообщества разработчиков PHP, сооснователь компании Zend Technologies и автор движка Zend Engine.
Из возражений (https://wiki.php.net/pplusplus/concerns) оппонентов можно отметить опасение в недостатке ресурсов для продвижения проекта (в режиме полного рабочего дня над PHP работает всего два разработчика), возможность фрагментации сообщества, конкуренция с уже существующим языком Hack (https://www.opennet.ru/opennews/art.shtml?num=39368) (PHP со статической типизацией), опыт проекта HHVM, в конечном счёте отказавшегося (https://www.opennet.ru/opennews/art.shtml?num=50133) поддерживать в одном runtime PHP и Hack, вопросы по поводу организации сосуществования и взаимодействия PHP и P++, нетривиальность конвертации кода PHP в P++, несовместимость P++ с существующими инструментариями для PHP и необходимость убедить авторов инструментариев и IDE обеспечить поддержку новой редакции.
URL: https://blog.jetbrains.com/phpstorm/2019/08/php-annotated-au.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=51291