HipHop (транслятор)

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
HipHop for PHP (HPHPc)
HipHop for PHP Logo, White on Blue.png
Тип среда выполнения и транслятор
Разработчик Facebook
Написана на C++, C, PHP
Первый выпуск 2010-2-2; 3116 дней тому назад[1]
Последняя версия Заменён на HHVM[2][3] (2013-08-15; 1826 дней тому назад)
Состояние Разработка прекращена
Лицензия PHP License
Сайт github.com/facebook/hiph…
hhvm.com[4]
HipHop Virtual Machine (HHVM)
HHVM - Logo.png
Тип среда выполнения и транслятор
Разработчик Facebook
Написана на C++, C
Первый выпуск 2011-12-09; 2441 день тому назад[5]
Последняя версия 3.25.2[6] (2018-03-30; 138 дней тому назад)
Состояние Active
Лицензия PHP License and Zend License[7]
Сайт hhvm.com

HipHop for PHP (HPHPc, букв. HipHop для языка PHP) — транслятор исходного кода, созданный компанией Facebook. HipHop программно превращает исходный код, написанный на языке PHP, в оптимизированный код на C++, а затем использует компилятор g++ для его компиляции. HipHop включает в себя транслятор кода, альтернативную реализацию среды выполнения PHP, а также множество наиболее распространённых расширений PHP (англ. PHP Extensions), переписанных на C с целью повышения производительности[8].

HipHop был создан разработчиками социальной сети Facebook для экономии ресурсов их серверов. Код было решено выпустить 2 февраля 2010 года в виде открытого ПО[9]. Однако релиз кода был задержан из-за проблем с очисткой исходного кода от специфичных для Facebook расширений. Исходный код проекта стал доступен 20 февраля 2010 года[10].

Ими же был разработан HPHPi, представляющий собой экспериментальный интерпретатор PHP, предназначенный для отладки и быстрого прототипирования кода. Затем они разработали HHVM — экспериментальную виртуальную машину для исполнения и JIT оптимизации PHP кода.

20 марта 2014 года Facebook был официально представлен язык программирования Hack[11], близкий к PHP и реализованный поверх HHVM, в котором дополнительно введена статическая типизация[12]. Первый вариант спецификации этого языка[13] опубликован 19 февраля 2015 года[14].

6 января 2015 года был окончен 9-месячный процесс перевода на использование HHVM серверов проекта Wikipedia, в ходе которого была проделана большая работа по доработке интерпретатора[15][16][17].

См. также[править | править код]

Примечания[править | править код]

  1. Haiping Zhao. HipHop for PHP: Move Fast. Facebook (2 февраля 2010). Проверено 2 августа 2014.
  2. Drew Paroski. Speeding up PHP-based development with HHVM. Facebook (29 ноября 2012). Проверено 2 августа 2014.
  3. Paul Tarjan. Joining, Retirement, Testing, and Bankruptcy. hhvm.com (13 мая 2013). Проверено 2 августа 2014.
  4. https://api.github.com/repos/facebook/hiphop-php
  5. Jason Evans. The HipHop Virtual Machine. Facebook (2011-12-09.mdy.2018). Проверено 2014-08-02.mdy.2018.
  6. facebook/hhvm: Release HHVM-3.25.2. github.com. Facebook (2018-03-30.mdy.2018). Проверено 2018-03-30.mdy.2018.
  7. facebook/hhvm: License. github.com. Facebook. Проверено 2014-08-02.mdy.2018.
  8. HipHop for PHP: Move Fast (англ.)
  9. PHP Creator Asks, Is Facebook’s HipHop Just a 'Nifty Trick'? (англ.)
  10. Сборка и запуск HipHop-PHP
  11. Julien Verlaguet, Alok Menghrajani. Hack: a new programming language for HHVM, facebook code (20 марта 2014). Проверено 24 марта 2014.
  12. hacklang.org — официальный сайт языка Hack
  13. Specification for Hack. github. Проверено 22 февраля 2015.
  14. Joel Marcey. Announcing a Specification for Hack, HHVM Blog (February 19, 2015). Проверено 22 февраля 2015.
  15. Проект Wikipedia перешёл на использование HHVM для выполнения PHP-кода, OpenNET (07.01.2015). Проверено 22 февраля 2015.
  16. Brett Simmers. Wikipedia on HHVM, HHVM Blog (January 6, 2015). Проверено 22 февраля 2015.
  17. HHVM — MediaWiki. Проверено 22 февраля 2015.

Литература[править | править код]


Ссылки[править | править код]