米Facebook、PHP互換の新プログラミング言語「Hack」を公開
米Facebookは3月20日、同社が開発するプログラム実行環境「HHVM(HipHop Virtual Machine)」向けのプログラミング言語「Hack」をオープンソースで公開した。PHPをベースに静的型付け機能を組み込むことで、高い実行速度を保ちつつ生産性を改善するという。
Hackは、PHPの高速化を目的にFacebookが開発したPHP用JITコンパイラであるHHVMのランタイムプラットフォームの一部として公開された。ライセンスはBSD License。これにより、HHVMではPHPとHackの両方をサポートするようになる。
PHPとシームレスな互換性があり、PHPコードのほとんどをそのままHackコードとして利用できる。関数のシグネチャとクラスメンバに型付け情報を注釈として付けられるのが特徴で、型検査はインクリメンタルで実行される。同一ファイル内での一部のコードのみHackに変換し、残りは動的型付けのままということも可能という。このような特徴から、開発チームはHackは「段階的な型付け言語」としており、動的型付けコードと静的型付けコードのシームレスな相互運用が可能になるとしている。ただし、静的型付けとは互換性のない非推奨の関数や機能は含まれていない。
ランタイムレベルで戻り値の型とパラメーターの型が強制されるため、安全性を強化できるという。さらに問題の検出や診断が容易になり、コード生成効率も改善されるとのこと。また、コレクションやラムダ式などの機能も提供される。
すでにFacebook社内では、この1年の間でPHPコードのほとんどをHackにマイグレーションしたという。Facebookでは専用Webサイトを立ち上げてHackの詳細を説明している。
Hack
http://hacklang.org/