PHP иштеп чыгуучулары катуу терилген диалект болгон P++ тилин сунушташты

Разработчики языка PHP иш с идеей по созданию нового диалекта P++, который поможет вывести язык PHP на новый уровень. В текущем виде развитию PHP мешает необходимость сохранения совместимости с имеющейся кодовой базой web-проектов, что удерживает разработчиков в ограниченных рамках. В качестве выхода сунуш кылган параллельно начать развивать новый диалект PHP — P++, разработка которого будет вестись без оглядки на необходимость сохранения обратной совместимости, что позволит добавить в язык революционные улучшения и избавиться от устаревших концепций.

Наиболее заметными изменениями в P++ станет переход к использованию строгой типизации, избавление от применения тегов «‹?», прекращеие поддержки array() в пользу синтаксиса «[]» и запрет использования глобального пространства имён для функций.

Для проекта предварительно выбрано имя P++ (PHP Plus Plus) по аналогии с С++. PHP и P++ предложено развивать бок о бок и использовать единый runtime. Не связанные с синтаксисом низкоуровневые компоненты, структуры данных, расширения и оптимизации производительности одновременно будут разрабатываться для PHP и P++, но в режиме PHP будет сохраняться обратная совместимость, а в P++ можно будет экспериментировать с эволюционированием языка.

Код на PHP и P++ можно будет смешивать в одном приложении и выполнять одним интерпретатором, но метод разделения кода пока не определён. При этом разработчики не отказываются от планов по развитию ветки PHP 8, в которой пландаштырылган добавить JIT-компилятор и средства для обеспечения переносимости с библиотеками на C/C++. Проект P++ пока находится на стадии обсуждения предложения. Основным сторонником P++ является Зеев Сураски (Zeev Suraski), один из лидеров сообщества разработчиков PHP, сооснователь компании Zend Technologies и автор движка Zend Engine.

чейин возражений оппонентов можно отметить опасение в недостатке ресурсов для продвижения проекта (в режиме полного рабочего дня над PHP работает всего два разработчика), возможность фрагментации сообщества, конкуренция с уже существующим языком Hack (PHP со статической типизацией), опыт проекта HHVM (в конечном счёте отказавшегося поддерживать в одном runtime PHP и Hack), необходимость изменения семантики для строгой типизации, опасность стагнации PHP и развития новшеств только в P++, вопросы по поводу организации сосуществования и взаимодействия PHP и P++ (нетривиальность конвертации кода PHP в P++ (синтаксис может разойтись настолько, что потребуется переписывание приложения), несовместимость P++ с существующими инструментариями для PHP и необходимость убедить авторов инструментариев, систем тестирования и IDE обеспечить поддержку новой редакции).

Source: opennet.ru

Комментарий кошуу