18 июня 2015 г.
Ведущие разработчики браузеров, включая Google, Microsoft, Mozilla и инженеров движка WebKit под эгидой Консорциума Всемирной паутины (W3C) — организации, разрабатывающей единые стандарты веб-технологий, — анонсировали новый проект WebAssembly, призванный увеличить скорость загрузки веб-страниц в несколько десятков раз.
WebAssembly — это унифицированный двоичный компилятор. Его задача заключается в том, чтобы встроенный в браузер движок JavaScript мог исполнять код, скомпилированный из разных языков программирования, таких как C/C++.
У бинарного формата есть несколько важных преимуществ. Во-первых, он обеспечивает более сильное сжатие JavaScript-файлов (по сути, обычного текста), что приведет к скачиванию меньшего объема данных из Интернета. Во-вторых, JavaScript-движок в браузерах декодирует двоичный код в десятки раз быстрее, что скажется на повышении скорости загрузки сайтов, особенно на мобильных устройствах. Прототип WebAssembly уже обрабатывает код до 23-х раз быстрее, чем код asm.js.
Ранее разработчикам приходилось обходить ограничения для комплиляции кода в JavaScript. Каждая крупная компания пыталась решить проблему по-своему. Microsoft, например, создала язык TypeScript, расширяющий функции JavaScript, Mozilla — подмножество asm.js, Google — Native Client. Новый формат призван объединить достоинства этих разработок и сделать так, чтобы для веба могло быть скомпилировано больше языков.
На начальном этапе разработчики планируют выпустить библиотеку для трансляции WebAssemlby-кода в JavaScript, чтобы его можно было запускать в любом браузере. Позднее будет выпущено больше инструментов (компиляторов, отладчиков и т.п.) и добавлена поддержка новых языков (Rust, Go, C# и др.).
Источник: TechCrunch