Googleの「Portable Native Client」(PNaCl)が、ホワイトペーパーでの紹介から3年以上過ぎた米国時間11月12日、開発者に公開された。
PNaCl(「ピナクル」と発音)を使うことで、開発者はCおよびC++コードをコンパイルしてウェブアプリを作成できる。ネイティブコードからウェブへの「翻訳」を簡略化することにより、オーディオおよびビデオ圧縮解除ソフトウェア、画像編集ツール、あるいはビデオゲームを動かす複雑なエンジンなどを独自に作りたい開発者に、多大な恩恵をもたらす可能性がある。
Googleは、PNaClの公開を発表したブログ投稿の中で、PNaClの技術的側面を簡潔に説明した。アプリケーションを再コンパイルしてx86、ARM、MIPSなどさまざまなハードウェアを搭載するデバイス上で実行するという、プロセッサに大きな負荷をかけるタスクを回避するものだとしている。
しかし、一般公開はされたにもかかわらず、PNaClの前途はまだ険しい。PNaClや、その先達である「Native Client」(NaCl)、そしてPNaClとブラウザのやり取りを可能にするAPIの集合である「Pepper」は、「Google Chrome」の中でしか機能しない。これらを他のブラウザに統合する計画は、今のところないようだ。GoogleはChromeのレンダリングエンジン「Blink」で、オープンで採用が進むウェブ標準を順守するという原則を示しているが、Mozillaは、PNaClがこの原則に違反しているとの批判を表明している。
MozillaのプログラマーであるRobert O'Callahan氏は、「残念ながら、Blinkの原則は、Chrome全体ではなくBlinkにしか当てはまらないようだ」と記した。
Googleは米CNETに対し、他のブラウザがオープンソースであるPNaClやNaClを採用することで、JavaScript以外の言語でコーディングするプログラマーがプロジェクトをウェブに移植しやすくなることを望んでいると伝えた。
複数のプログラミング基盤に同時に対応することは、開発がより困難なウェブにつながるのではないかという、もっともな懸念もある。PNaCl向けのコーディングがウェブの断片化につながると予想する批判的な主張は、ウェブ開発者が「Internet Explorer」専用にコードを書く必要があった10年前を思わせないでもない。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)