Tag Archives: hhvm

Facebook’s HHVM completely switches to Hack instead of PHP

The next long-term support release of HHVM which will be released in early 2018 is going to be the last version that commits to PHP 5.

Facebook’s Hip-Hop Virtual Machine (HHVM) is a speedy engine for PHP, will not target the most recent major release of PHP (PHP7) and instead will focus on Hack language which is a PHP spinoff.

As trying to support both PHP 7 and Hack would lead the HHVM team to undesirable compromises on both fronts they decided to separate themselves from PHP so they can evolve Hack without having to face all of the oldest and darkest concerns of the PHP’s design.

PHP 7 is representing a substantive departure from PHP 5, it has changed many behaviors which some of them is not backward-compatible, Consequently, HHVM will not aim to target PHP 7 the HHVM development team believes that they have a clear path toward making Hack a fantastic language for web development, untethered from its PHP origins.
Facebook has used HHVM for many years to almost exclusively to run Hack. They said: The Hack language had addressed many of PHP 5’s shortcomings which some of them are fixed by PHP 7 as well and by cutting loose from PHP we are hoping to provide a higher performance experience with HHVM and Hack which can be achieved by creating many features, libraries, and performance opportunities.

Some of the planned improvements of Hack are below:

  • Completing Hack arrays, with array-like data structures that are easier to type-check
  • Eliminating destructors and references
  • Using garbage collection to produce measurable performance improvement.
Conclusion

Hack was born in the PHP ecosystem so Facebook has plans to make HHVM compatible with major PHP tools such as Composer and PHPUnit, but the main goal for Hack is to have its own ecosystem and can act as a core of frameworks.