プログラミング言語 Hack と、その仮想機械である HHVM の紹介です。勤務先の社内勉強会での発表資料に加筆したものです。
(11/15 16:15追記)本稿で指摘している違いの1件目についてバグレポを書いたところ、すぐ直すよーとのことでした。 (11/18 17:30追記)上記修正がmasterブランチに取り込まれていることを確認しました。 PHPのJITコンパイラ実装であるHHVMが最近話題ですね。本家より高速というふれこみですし、Facebookが開発・実運用している実績もあるわけですから、導入を検討されている方も多いのではないでしょうか。 とはいえ、特に商用環境に導入するとなると互換性がどこまで確保できているかも重要です。現時点でも実運用に耐える程度の互換性はあるはずですが、僕は非常に保守的な人間なので、HHVMが互換性にどこまでこだわっているのかに興味があります。 今回、==演算子に絞ってHHVMとPHPの挙動を調べてみたところ、2点の違いを見つけたので紹介します。比較にはUbuntu14.04上のp
HHVM の話を聴いてからというもの、VM というものにどうにも興味がわいて仕方がない今日この頃。世の中の言語処理系も中身は VM だったりするわけで、そもそも VM ってどうやって作るのかな − とか考えてたら @riywo PDP-11のVM作って、Unix V6動かせば、一石何鳥になることやら — sakamoto.kazuki (@splhack) October 1, 2014 というご意見をもらって、初めて PDP-11 というものを調べ始めました。UNIX V6 の本とかを買って読み始めてみたり、言語処理系の作り方の本にも手をだしてみました。 PDP-11/UNIX V6 の勉強会があった そんな中、@7shiさんが主催されている「池袋バイナリ勉強会」の存在を知りました。なんと、ついこの間まで PDP-11 の逆アセンブラ(機械語のバイナリからアセンブリ言語を出力する)を作っ
本記事は英語版ブログで公開された記事の翻訳版です。 Facebookは2014年3月20日、HHVM用のプログラミング言語「Hack」をリリースしました。この記事ではHHVMとは何かを紹介しつつ、Hackについて詳しく見ていこうと思います。 Facebookは(おそらく)世界最大級のPHPインスタレーションですが、近年はPHP5を離れ独自開発によるソリューションに向かっています。 ここまできても、まだPHP環境と呼べるのでしょうか?答えは「もちろん」と「とんでもない」の中間ぐらいといえます。 HHVM(HipHop Virtual Machine)の簡単な歴史 Facebookは初めに「HPHPc」というPHPからC++へのコンパイラを作りました。 これはFacebookの膨大なコードベースをC++コードに変換し、そこからコンパイルするというものでした――このプロセスには時間が(何時間も)
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く