古い記事なのに、ちょこちょこと見られているようなので少し更新しました。Hackはタグすらない不遇っぷり。
HHVMとは
HHVM(HipHop Virtual Machine)とは、Facebookが開発・公開しているC++で実装されたPHP実行環境(JITコンパイラ)の一つです。PHPのコードをJITコンパイルし、高速で動作させることを目的としています。以前に公開された「HHVM 3.0.0」ではPHPの他にPHPとシームレスに連携できる新しいプログラミング言語の「Hack」も動作させることができます。
(2017/07/31現在の最新版は3.20.0)
HHVMはFastCGIベースでApacheやnginxと共に動作します。
- 2014年ごろは、PHPをHHVMで動作させれば速くなるかも!と言った使われ方もあった様ですが、PHP7もリリースされた最近ではHack/HHVMとセットで使われることが多そうです。
Hackとは
HHVM環境でPHPと共に動作する開発言語で、Facebookが開発・公開しています。PHPの利点と静的型付言語の利点を兼ね備え、一般的な開発言語が持っている機能もほぼ網羅されています。PHPからの移行も易しく、facebook社内のPHPコードはほぼHackに置き換えられているとのこと。ジェネリクス、Nullable型、型エイリアス化、Collections、ラムダなども実装されています。
Hackエディタ
- Nuclide facebookオススメ
- Vim
- Emacs
- Atom
- SublimeText
HHVMのインストール
HHVM環境を作成するには、自分でbuildする方法とパッケージから導入する方法があります。パッケージから導入する方法は割と簡単ですが、buildするのは結構面倒です。
日本語情報について
ほとんどありません。blogでも環境を作って動かしてみたぐらいの人が多い様です。英語のドキュメントはそれなりにあるようですが、3系のものはまだあまり無い模様。
書籍
Kindle版 プログラミングHHVM Hack
CentOSにとりあえず入れてみました(古い記事です)
HHVM 3.0.1をCentOS 6.5 (64-bit)にインストールする
#利用事例
https://www.slideshare.net/yujiotani16/php7hackhhvm7
https://speakerdeck.com/curepine/hackdefalse-zhuan-zhi-saitogou-zhu-shi-li
https://www.slideshare.net/K2ICE/hhvm-on-centos6?ref=https://geechs-magazine.com/tag/event/20160215
参考
http://hhvm.com/
https://github.com/facebook/hhvm