Ведущие разработчики браузеров, включая Google, Apple, Microsoft и Mozilla решили создать новый веб-стандарт, который позволит писать код сайтов на C/C++ и других языках и компилировать их в бинарный исполняемый файл сайта. Нововведение позволит в десятки раз увеличить скорость загрузки страниц.

WebAssembly — это унифицированный двоичный компилятор. Его задача заключается в том, чтобы встроенный в браузер движок JavaScript мог исполнять код, скомпилированный из разных языков программирования, таких как C/C++.

У бинарного формата есть несколько важных преимуществ. Во-первых, он обеспечивает более сильное сжатие JavaScript-файлов, что приведет к скачиванию меньшего объема данных из Интернета. Во-вторых, JavaScript-движок в браузерах декодирует двоичный код в десятки раз быстрее, что скажется на повышении скорости загрузки сайтов, особенно на мобильных устройствах. Прототип WebAssembly уже обрабатывает код до 23-х раз быстрее, чем код asm.js.

Ранее разработчикам приходилось обходить ограничения для комплиляции кода в JavaScript. Каждая крупная компания пыталась решить проблему по-своему. Microsoft, например, создала язык TypeScript, расширяющий функции JavaScript, Mozilla — подмножество asm.js, Google — Native Client. Новый формат призван объединить достоинства этих разработок и сделать так, чтобы для веба могло быть скомпилировано больше языков.

Высокая скорость работы — не единственное преимущество нового стандарта над последовательной компиляцией JavaScript-кода. Бинарный код легче сжимается. Таким образом, переход на новый формат позволит снизить нагрузку на сеть и увеличить скорость доставки веб-файлов в браузер.

На начальном этапе разработчики планируют выпустить библиотеку для трансляции WebAssemlby-кода в JavaScript, чтобы его можно было запускать в любом браузере. Позднее будет выпущено больше инструментов (компиляторов, отладчиков и т.п.) и добавлена поддержка новых языков (Rust, Go, C# и др.).

По мнению создателя JavaScript Брендена Айка (Brendan Eich) — который недолго пробыл генеральным директором Mozilla — после того как все основные браузеры получат поддержку WebAssembly, между WebAssembly и JavaScript произойдет раскол. Однако авторы стандарта подчеркивают, что задача нового стандарта — не заменить JavaScript, а лишь предоставить возможность компиляции кода для веб-сайтов, написанном на большем количестве языках.

Источник: http://www.macdigger.ru/macall/google-a … 0-raz.html

Надеюсь можно будет настраивать запуск сайтов только с сертификатами? А то будет дыра почище венды.

Такими темпами они ActiveX заново изобретут. И да, дырка будет знатная - куда больше ActiveX.

sentaus
Обоснуйте. Интерпретатор байт-кода там, насколько я понимаю.

krigstask
Таки да, байт-код с интерпретаторов. А из текста выше подумалось, что там сразу машинный бинарник клиенту грузится.
Но один косяк есть - там вроде как среда исполнения кода будет совсем простая, без всяких сборщиков мусора, так что кривой клиентский код сайтов на c++ с утечками памяти будет течь на клиентах.

sentaus
«Простите, сайт не скомпилирован под Вашу ОС».

я давно об этом думал... Странно, что "догадались" они только сейчас.
Что до безопасности, то она и сейчас является антонимом слов "Windows", "JS" и "Flash" ;-)

:offtopic:
Уже найден способ считывать содержимое ОЗУ через JavaScript в браузере (!!!).

Сразу подумалось про 32 марта после прочтения заголовка, но как-то не вовремя…

Какие возможности для удалено -то открываются! :D Я даже жабоскрипт (-разработанный-студентами-за-еду) везде отключаю - а такие сайты сразу в бан.