ブラウザ向けコード実行環境 WebAssembly について主要ブラウザの開発者が共著した論文について向井が話します。
- Bringing the Web up to Speed with WebAssembly
- webassembly.org
- asm.js
- emscripten
- Performance Testing Web Assembly vs JavaScript
- JavaScript vs WebAssembly easy benchmark – Takahiro
- PNaClについて、ポッドキャスト内で言及するといっておいて言及し忘れたのでかるくふれておきます
- PNaClはGoogle ChromeにおけるNative Client (NaCl)という拡張をよりポータブルにしたものです。具体的には、NaClはネイティブコードを配布して検証・実行をしますが、PNaClでは配布データがllvm bitcodeとなり、これを検証・実行します
- 論文中ではasm.jsとならんで直接的な先祖のひとつとされていました。過去にはPNaCl形式のバイナリをウェブページから配布すればChromeは実行できる、といったことを目標にしていました。現在はwebassemblyにフォーカスを移し、chromeからも使えなくなる(かもう使えなくなった)はず
- webassemblyになぜllvm bitcodeのような既存のIRを使わなかったのか、ということも(おそらくPNaCl関係の著者により)論文中に書かれていますので、興味のある方は論文内related workの節をご参照ください
Follow-up
- Yutaka Matsubara on Twitter: “そーいえば結局vgoがAPIベースのアクセスやめた話出てなかったな。modulesは少し触れられてたけど #misreading”
- Russ Cox on Go dependency management | Hacker News
- SREcon Conferences | USENIX