KPHP (KPHP)

Перейти к навигации Перейти к поиску
KPHP
Тип Транслятор PHP в C++
Разработчик ВКонтакте
Написана на Си и C++
Последняя версия
Репозиторий github.com/VKCOM/kphp
Состояние активное
Лицензия GNU LGPL и GNU GPL
Сайт vkcom.github.io/k… (рус.)

KPHP (kPHP, KittenPHP) — свободный (GPL/LGPL) транслятор PHP-кода в C++ от компании ВКонтакте.

По словам разработчиков, переход социальной сети в конце мая 2013 года на новый язык программирования дал двукратное повышение скорости сервиса[2].

6 марта 2014 года код транслятора и сопутствующих инструментов был размещен в открытом доступе[3]. Однако разработка не была продолжена на самом GitHub и проект лежал без изменений шесть лет. 11 ноября 2020 года компилятор KPHP был повторно выложен на GitHub[4], но на этот раз без внутренних баз данных («движков»).

Изначально kPHP задумывался как язык, не полностью совместимый с языком PHP. Так, например, для ускорения выполнения-компиляции в нём есть возможность явно задавать типы переменных[5] и сильно ограничено применение ООП, что имеется в современных версиях языка PHP (начиная с версии 7.0). Кроме того, kPHP выигрывает в плане статического анализа кода, он имеет преимущества в использовании памяти и использует меньше процессорного времени[5].

Приставка К- происходит от слова kitten (рус. котёнок), что стало своеобразной традицией во внутренних разработках ВКонтакте[6].

Примечания

[править | править код]
  1. https://github.com/VKCOM/kphp/milestone/47?closed=1 — 2024.
  2. "Мы завершили перевод всего кода ВКонтакте на компилируемый язык программирования, который разрабатывали более года, — KPHP". Дата обращения: 22 октября 2015. Архивировано 21 января 2014 года.
  3. Хабрахабр: Релиз KPHP и движков. Дата обращения: 7 марта 2014. Архивировано 7 марта 2014 года.
  4. ВКонтакте снова выкладывает KPHP. habr.com. Дата обращения: 11 ноября 2020. Архивировано 11 ноября 2020 года.
  5. 1 2 kPHP против американского HipHop’а. Дата обращения: 26 января 2022. Архивировано 26 января 2022 года.
  6. О kPHP: как котята ускоряют ВКонтакте. Дата обращения: 25 декабря 2013. Архивировано 26 декабря 2013 года.