Ведущие разработчики браузеров, включая 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
Отсутствует
sentaus
Обоснуйте. Интерпретатор байт-кода там, насколько я понимаю.
Ядрёная консоль делает меня сильней!
Отсутствует
krigstask
Таки да, байт-код с интерпретаторов. А из текста выше подумалось, что там сразу машинный бинарник клиенту грузится.
Но один косяк есть - там вроде как среда исполнения кода будет совсем простая, без всяких сборщиков мусора, так что кривой клиентский код сайтов на c++ с утечками памяти будет течь на клиентах.
Отсутствует
я давно об этом думал... Странно, что "догадались" они только сейчас.
Что до безопасности, то она и сейчас является антонимом слов "Windows", "JS" и "Flash" ;-)
Уже найден способ считывать содержимое ОЗУ через JavaScript в браузере (!!!).
Отредактировано Пандёнок (01-08-2015 22:10:05)
Отсутствует
Сразу подумалось про 32 марта после прочтения заголовка, но как-то не вовремя…
Отсутствует
Какие возможности для удалено -то открываются! Я даже жабоскрипт (-разработанный-студентами-за-еду) везде отключаю - а такие сайты сразу в бан.
Отсутствует