Разработчики JavaScript-движка V8 сообщили о реализации экспериментальной поддержки WebAssembly (WASM), не зависящего от браузера универсального низкоуровневого промежуточного кода для выполнения в браузере приложений, скомпилированных из различных языков программирования. Компоненты для выполнения байткода WASM, JavaScript API для доступа к функциональности WebAssembly и сопутствующие элементы инфраструктуры, такие как компилятор из C/C++ в WebAssembly, приняты в кодовую базу V8 и проекта Chromium.
Реализация WASM, интегрированная в V8, основана на генерации движком WASM промежуточного кода, единого с оптимизирующим JavaScript-компилятором TurboFan, что позволило добиться высокой скорости компиляции и высокого качества кода за счёт задействования типовых и проверенных подсистем JIT и runtime. Интеграция также дала возможность обеспечить взаимодействие между WASM и JavaScript без дополнительных прослоек.
По своим задачам WebAssembly во многом напоминает PNaCl (Portable Native Client)
...
Читать дальше »