fbpx
Wikipedia

HipHop for PHP

HipHop for PHP (HPHPc) is a discontinued PHP transpiler created by Facebook. By using HPHPc as a source-to-source compiler, PHP code is translated into C++, compiled into a binary and run as an executable, as opposed to the PHP's usual execution path of PHP code being transformed into opcodes and interpreted. HPHPc consists mainly of C++, C and PHP source codes, and it is free and open-source software distributed under the PHP License.

HipHop for PHP
Developer(s)Facebook, Inc.
Initial releaseFebruary 2, 2010; 14 years ago (2010-02-02)[1]
Final release
Replaced by HHVM[2][3] / 2013; 11 years ago (2013)
Repository
  • github.com/facebook/hiphop-php
Written inC++, C, PHP
SuccessorHHVM
LicensePHP License
Websitegithub.com/facebook/hiphop-php 

The original motivation behind HipHop was to save resources on Facebook servers, given the large PHP codebase of facebook.com. As the development of HipHop progressed, it was realised that HipHop could substantially increase the speed of PHP applications in general. Increases in web page generation throughput by factors of up to six have been observed over the Zend PHP.[4][5][6][7][8] A stated goal of HPHPc was to provide a high level of compatibility for Zend PHP, where most Zend-based PHP programs run unmodified on HPHPc.[6] HPHPc was originally open sourced in early 2010.[1]

As an addition to HPHPc, Facebook engineers also created a "developer mode" of HipHop (interpreted version of a PHP execution engine, known as HPHPi) and the HipHop debugger (known as HPHPd). These additions allow developers to run PHP code through the same logic provided by HPHPc while making it possible to interactively debug PHP code by defining watches, breakpoints, etc. Running the code through HPHPi yields lower performance when compared to HPHPc, but the developer benefits were, at the time, worth having to maintain these two execution engines for production and development. HPHPi and HPHPd were also open sourced in 2010.[1]

By many accounts HPHPc fulfilled its goals, especially within Facebook as it allowed facebook.com to run much faster while using fewer resources. However, in early 2013 Facebook deprecated HPHPc in favor of the HipHop Virtual Machine (HHVM), which is a just-in-time (JIT) compilation-based execution engine for PHP, also developed by Facebook.[2][9] There were many reasons for this; one of them was HPHPc's flattened curve for further performance improvements. Also, HPHPc did not fully support the PHP language, including the create_function() and eval() constructs, and it involved a specific time- and resource-consuming deployment process that required a bigger than 1 GB binary to be compiled and distributed to many servers in short order. In addition, maintaining HPHPc and HPHPi in parallel (as they needed to be, for the consistency of production and development environments) was becoming cumbersome. Finally, HPHPc was not a drop-in replacement for Zend, requiring external customers to change their whole development and deployment processes to use HPHPc.[2]

See also edit

References edit

  1. ^ a b c Haiping Zhao (2010-02-02). "HipHop for PHP: Move Fast". Facebook. Retrieved 2014-08-02.
  2. ^ a b c Drew Paroski (2012-11-29). "Speeding up PHP-based development with HHVM". Facebook. Retrieved 2014-08-02.
  3. ^ Paul Tarjan (2013-05-13). "Joining, Retirement, Testing, and Bankruptcy". hhvm.com. Retrieved 2014-08-02.
  4. ^ "OOPSLA '12 Paper". Retrieved 2013-05-23.
  5. ^ Guilherme Ottoni (2013-03-12). "The HipHop Compiler for PHP". OOPSLA 2012. Retrieved 2013-05-23.
  6. ^ a b "FOSDEM 2013 Interview". Retrieved 2013-05-23.
  7. ^ . Archived from the original on 2011-05-16. Retrieved 2013-05-23.
  8. ^ . Archived from the original on 2011-05-19. Retrieved 2013-05-23.
  9. ^ "Announcement on GitHub removing HPHPc support". github.com. Facebook. 2013-02-19. Retrieved 2013-05-24.

External links edit

  • HipHop Compiler for PHP? Transforming PHP into C++ on YouTube, by Haiping Zhao
  • The HipHop Compiler for PHP, OOPSLA 2012, by Guilherme Ottoni et al.
  • Scaling with HipHop on YouTube, PHP UK Conference 2013, by Sara Goleman

hiphop, hphpc, discontinued, transpiler, created, facebook, using, hphpc, source, source, compiler, code, translated, into, compiled, into, binary, executable, opposed, usual, execution, path, code, being, transformed, into, opcodes, interpreted, hphpc, consis. HipHop for PHP HPHPc is a discontinued PHP transpiler created by Facebook By using HPHPc as a source to source compiler PHP code is translated into C compiled into a binary and run as an executable as opposed to the PHP s usual execution path of PHP code being transformed into opcodes and interpreted HPHPc consists mainly of C C and PHP source codes and it is free and open source software distributed under the PHP License HipHop for PHPDeveloper s Facebook Inc Initial releaseFebruary 2 2010 14 years ago 2010 02 02 1 Final releaseReplaced by HHVM 2 3 2013 11 years ago 2013 Repositorygithub wbr com wbr facebook wbr hiphop phpWritten inC C PHPSuccessorHHVMLicensePHP LicenseWebsitegithub wbr com wbr facebook wbr hiphop php The original motivation behind HipHop was to save resources on Facebook servers given the large PHP codebase of facebook com As the development of HipHop progressed it was realised that HipHop could substantially increase the speed of PHP applications in general Increases in web page generation throughput by factors of up to six have been observed over the Zend PHP 4 5 6 7 8 A stated goal of HPHPc was to provide a high level of compatibility for Zend PHP where most Zend based PHP programs run unmodified on HPHPc 6 HPHPc was originally open sourced in early 2010 1 As an addition to HPHPc Facebook engineers also created a developer mode of HipHop interpreted version of a PHP execution engine known as HPHPi and the HipHop debugger known as HPHPd These additions allow developers to run PHP code through the same logic provided by HPHPc while making it possible to interactively debug PHP code by defining watches breakpoints etc Running the code through HPHPi yields lower performance when compared to HPHPc but the developer benefits were at the time worth having to maintain these two execution engines for production and development HPHPi and HPHPd were also open sourced in 2010 1 By many accounts HPHPc fulfilled its goals especially within Facebook as it allowed facebook com to run much faster while using fewer resources However in early 2013 Facebook deprecated HPHPc in favor of the HipHop Virtual Machine HHVM which is a just in time JIT compilation based execution engine for PHP also developed by Facebook 2 9 There were many reasons for this one of them was HPHPc s flattened curve for further performance improvements Also HPHPc did not fully support the PHP language including the create function and eval constructs and it involved a specific time and resource consuming deployment process that required a bigger than 1 GB binary to be compiled and distributed to many servers in short order In addition maintaining HPHPc and HPHPi in parallel as they needed to be for the consistency of production and development environments was becoming cumbersome Finally HPHPc was not a drop in replacement for Zend requiring external customers to change their whole development and deployment processes to use HPHPc 2 See also edit nbsp Computer programming portal Parrot virtual machine PhalangerReferences edit a b c Haiping Zhao 2010 02 02 HipHop for PHP Move Fast Facebook Retrieved 2014 08 02 a b c Drew Paroski 2012 11 29 Speeding up PHP based development with HHVM Facebook Retrieved 2014 08 02 Paul Tarjan 2013 05 13 Joining Retirement Testing and Bankruptcy hhvm com Retrieved 2014 08 02 OOPSLA 12 Paper Retrieved 2013 05 23 Guilherme Ottoni 2013 03 12 The HipHop Compiler for PHP OOPSLA 2012 Retrieved 2013 05 23 a b FOSDEM 2013 Interview Retrieved 2013 05 23 HipHop for PHP Benchmark Archived from the original on 2011 05 16 Retrieved 2013 05 23 Drupal 7 HipHop for PHP vs APC benchmark Archived from the original on 2011 05 19 Retrieved 2013 05 23 Announcement on GitHub removing HPHPc support github com Facebook 2013 02 19 Retrieved 2013 05 24 External links editHipHop Compiler for PHP Transforming PHP into C on YouTube by Haiping Zhao The HipHop Compiler for PHP OOPSLA 2012 by Guilherme Ottoni et al Scaling with HipHop on YouTube PHP UK Conference 2013 by Sara Goleman Retrieved from https en wikipedia org w index php title HipHop for PHP amp oldid 1198840286, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.