|HHVM 3.26 With New Front End|
|Written by Kay Ewbank|
|Monday, 21 May 2018|
The latest version of the HHVM interpreter for PHP/Hack has been released and now uses the HackC compiler front-end. HackC includes a full-fidelity parser (FFP) and bytecode emitter for the Hack and PHP languages.
Other improvements include relicensing of the typechecker and related tools and libraries to MIT, and support for Ubuntu 18.04. HHVM (Hip Hop Virtual Machine) is an open-source virtual machine developed at Facebook and designed for executing programs written in Hack and PHP. HHVM uses just-in-time (JIT) compilation to combine good performance with a flexible development environment.
Hack is a programming language developed by Facebook for HHVM. It is designed to combine the fast development cycle of a dynamically typed language with the discipline provided by static typing. It does this by offering 'instantaneous type checking'. Facebook has moved its entire codebase across to Hack, and there is an open source version complete with HHVM.
The full-fidelity parser (FFP) has been used to power several tools, such as Hack’s IDE integration via the Language Server Protocol, hackfmt, and hhast. ; in addition to the runtime, we expect the typechecker (hh_client and hh_server) to use the FFP in the future, leading to a single unified parser for typechecking, execution, IDE services, and other tools.
HackC passes all of HHVM’s tests - including the PHP specification tests - and produces semantically equivalent bytecode.
Another improvement in the new version is the addition of a new dynamic type to Hack’s type system. This is used in Hack to help capture dynamism in the codebase in typed code. The developers say it does this in a more manageable manner than
Hack has been relicensed under the MIT license, along with most Hack libraries and tools, including the Hack Standard Library. HHVM itself remains under the PHP and Zend licenses.
The developers say that the decision to relicense to MIT was made to move to a license that is broadly used in the community to ease concerns about compatibility, and to avoid holding back adoption for non-technical reasons.
or email your comment to: firstname.lastname@example.org
|Last Updated ( Monday, 21 May 2018 )|