HipHop
3 февраля 2010
Facebook, как вы уже могли слышать, выпустил транслятор PHP в код C++, названный HipHop.
Отмечу основные моменты
Бесплатный, открытый исходный код.
HipHop уже используется в Facebook по полной программе.
PHP → С++ → GCC → бинарник. Делать это надо каждый раз при развёртывании кода.
Бинарник может работать как сервер (libevent), а также запускаться из командной строки.
Веб сервер = один процесс, много потоков.
Не использует Zend Engine. Использует написанный на C++ почти совместимый с PHP 5.2 фреймворк.
Используются расширения на C++ (стандартные написаны C). Сейчас доступны те, что использует Facebook. Остальные будьте готовы переписывать сами. Все расширения на C++ thread-safe.
Некоторые магические методы поддерживаются, но не работают быстрее.
Не поддерживаются
Windows.
PHP 5.3 (поддержка планируется).
eval().
create_function()
preg_replace с модификатором /e.
function_exists() до объявления функции.
Поддерживаемый динамический функционал
Динамический вызов функций, в том числе call_user_func().
Динамические методы и свойства объектов.
Динамические переменные, extract().
Динамический include().
Переопределение функций, классов, констант.
__toString(), __get(), __set(), __call().
Источники информации:
Комментарии RSS по email OK
Вообще дико интересно. Интересует сравнение производительности, например - "чистый" вордпресс vs "хипхопнутый".
А мне вот интересно....на хабре сделали предположение, что ни один из фреймворковцмс под этой штукой не заведется..
Так ли это ?
Пример не пройдёт. Wordpress не заведётся, как и Drupal — там eval активно используется.
xoma
CMS популярные могут не завестись. Более-менее новые фреймворки — скорее всего заведутся.
Проверил. Yii точно не заведётся.
Если б скрипты в extensions компилировались бы)) Я бы так некоторые либы из ZF и Twig конвертнул.
Спасибо за как всегда оперативный и подробный анонс.
Интересно будет почитать мысли Ильи Альшанецкого по этом поводу, спасибо за линк.
А как исходники получить? с [http://developers.facebook.com/hiphop-php/](Исходный код) перебрасывает на главную гитхаба...
Да, что-то, похоже, убрали их.
https://github.com/facebook/hiphop-php По ссылке уже редиректит вот сюда