NaClアプリがChrome以外のブラウザでも動くかも! Google Chromeが打ち出しているネイティブ実行環境がNative Client(NaCl)です。Pepperと呼ばれており、CPU非依存のPNaClがリリースされるなどそろそろ本格的に立ち上がっていきそうな雰囲気になっています。 そんな中、Googleからリリースされているのがpepper.jsです。Pepper向けに作られたソフトウェアをEmscriptenを使って変換されたJavaScriptとして実行可能にするライブラリとのことです。つまりpepper.jsを使うとNaCl、JavaScriptの両方の環境で動作させられるようになります。 こちらはEmscripten版。普通に動きます。 大量の情報を一気に扱うと動作が重たくなってしまうのは否めません。 NaClにした場合、複数のスレッドが実行できるようになるのがメリットと言えます。Emscriptenでは重たいデモもNaClの場合はスムーズに動いたりします。とは言えJavaScriptでもそれなりに動いてしまうEmscriptenが凄いと感じられてしまうのですが。 一つと利点としてNaClが今後Chrome以外のブラウザに実装される可能性は限りなく低い中、pepper.jsを使うことでIE/Firefox/SafariといったWebブラウザでも動作させられるようになるということです。動作は重たくなってしまうと思いますが、互換性を持たせておくだけでも使い勝手は良くなるでしょう。 pepper.jsはJavaScript製、BSD Licenseのオープンソース・ソフトウェアです。 pepper.js pepper.js Examples google/pepper.js