米Facebook、Haskellライブラリの「Haxl」をオープンソースソフトウェアとして公開

 米Facebookが関数型プログラミング言語「Haskell」向けのデータアクセスライブラリ「Haxl」を公開した。リモートにあるデータベースへのアクセスを簡素化できるというもので、修正BSDライセンスで提供されている。

 Haskellは関数型プログラミング言語で、ほかの言語との統合性、並行性/並列性などを特徴とし、デバッガ、プロファイラ、リッチなライブラリなどを備える。

 HaxlはHaskell用のデータアクセスライブラリで、これを利用してリモートにあるデータベースやWebベースのサービスにアクセスできる。アプリケーションのコードとデータソースの間のレイヤとして機能し、同一のデータソースに対して複数の要求のバッチ処理、複数のデータソースからのデータ要求、過去の要求のキャッシュ作成などを自動で行うことで、データをフェッチするためのコードが簡潔になるという。

 FacebookはHaxlという名前の由来について「Haskell+FXL」と説明している。開発の経緯として、コンテンツの分類に利用しているSigmaのルール作成にドメイン固有言語のFXLを利用し、TAOやMemchacedなどのデータソースと接続していたが、CPUとメモリの浪費などの問題からFXLの代替としてHaskellを検討、FXLのI/Oスケジュールの振る舞いを組み込み型ドメイン特化言語(EDSL)として実装したという。

 Haxlフレームワークのほか、Facebook Graph APIにアクセスするものなど2種類のサンプルコードも公開されている

Haxl
https://github.com/facebook/Haxl