HipHop
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().
Источники информации:
- Анонс
- Исходный код
- My Thoughts on HipHop, Ilia Alshanetsky
- Notes from Facebook's HipHop for PHP Debut, Kris Jordan
- HipHop: What you need to know, Marco Tabini
Комментарии
Вообще дико интересно. Интересует сравнение производительности, например - "чистый" вордпресс vs "хипхопнутый".
А мне вот интересно....на хабре сделали предположение, что ни один из фреймворковцмс под этой штукой не заведется..
Так ли это ?
Пример не пройдёт. Wordpress не заведётся, как и Drupal — там eval активно используется.
xoma
CMS популярные могут не завестись. Более-менее новые фреймворки — скорее всего заведутся.
Проверил. Yii точно не заведётся.
Если б скрипты в extensions компилировались бы)) Я бы так некоторые либы из ZF и Twig конвертнул.
Спасибо за как всегда оперативный и подробный анонс.
Интересно будет почитать мысли Ильи Альшанецкого по этом поводу, спасибо за линк.
А как исходники получить? с http://developers.facebook.com/hiphop-php/ перебрасывает на главную гитхаба...
Да, что-то, похоже, убрали их.
Оставить комментарий