The Hack language has now got an official specification. According to the HHVM team, the Hack specification fills a gap in the documentation available for the Hack language.
The Hack specification is mostly addressed to "those that might want to create a Hack implementation of their own or something like a Hack conformance test-suite," but it is also "an excellent supplemental document for the Hack user."
The Hack specification is hosted on GitHub, and the HHVM team is open to feedback and pull requests. The language is still very young, so, say the HHVM team, "we will continue to evolve the specification with new features."
Hack is a programming language for HHVM, a JIT process virtual machine for the PHP and Hack languages. Hack was created in 2014 by Facebook as a dialect of PHP with the aim to maintain PHP's strengths while improving its ability to handle large code bases and adding features commonly found in modern programming languages, such as:
Hack interoperates seamlessly with PHP to the point of being quite "symbiotic" with it but, although most PHP scripts are valid in Hack, there are PHP features that are not supported, such as dynamic eval
and $$x
, globals, mixed HTML and Hack code.
The language implementation is open source, licensed under the BSD License. InfoQ has already covered Hack initial announcement and previsouly published an interview with Facebook's Keith Adams.