В Firefox, Chromium и Edge добавлена экспериментальная поддержка WebAssembly

Объявлено о начале тестирования в ночных сборках Firefox, в Chromium/Chrome Canary и в Microsoft Edge технологии WebAssembly (WASM), предоставляющей не зависящий от браузера универсальный низкоуровневый промежуточный код для выполнения в браузере приложений, скомпилированных из различных языков программирования. В Firefox WebAssembly активируется в about: config через переменную javascript.options.wasm, а в Chrome (начиная с Canary 51.0.2677.0) через «chrome://flags#enable-webassembly».

По своим задачам WebAssembly во многом напоминает PNaCl (Portable Native Client) и Asm.js. Основное отличие от Asm.js состоит в том, что WebAssembly является бинарным форматом, не завязанным на исходных текстах JavaScript и позволяющим выполнять в браузере низкоуровневый промежуточный код. В отличие от PNaCl, промежуточный код WASM не является машинным кодом и не изолирован в отдельной виртуальной машине, а выполняется с похожим на JavaScript уровнем изоляции. Среди основных задач WebAssembly выделяется обеспечение переносимости между браузерами, предсказуемость поведения и идентичности выполнения кода на разных платформах. Использование WebAssembly также позволит существенно сократить размер приложений, благодаря компактному промежуточному коду, и увеличить скорость декодирования.

©  OpenNet