Comments 6
WebAssembly-код существует в бинарном формате. Это означает, что такой код меньше, чем аналогичный JavaScript-код, и быстрее загружается.
Сильно поржал. Отличный уровень статьи. Автору, видимо, было неведомо, что чтоб написать такой wasm, который будет короче некоего JS — нужно написать очень очень много wasm и JS. В противном случае оверхед сожрёт всё напрочь, в то время как для JS оверхед отсутствует (всё уже есть в браузере).
PS: Чтоб не быть голословным — пример из статьи, имеющий 1 функцию, складывающую два числа — представляет собой бинарный файл на 4 килобайта. Что-то там говорите, короче и меньше чего?
«WebAssembly is delivered in a binary format, which means that it has both size and load time advantages over JavaScript.» я бы по другому и не перевел.
Правда, непонятно, что имелось в виду. Как он может быть короче? Время загрузки — спорить не буду (возможно), но размер…
В настоящее время wasm позволяет сделать неплохую числодробилку в браузере, для тех случаев, когда она реально нужна. Но на этом всё. И, опять же, быстродействие wasm — штука очень тонкая, с учётом того, что JS в браузере тоже здорово разгоняется засчёт оптимизации выполнения, пусть и не сразу; а у быстрого wasm есть бутылочное горлышко на отправке/принятии данных.
Для меня аббревиатура AS прочно ассоциируется с ActionScript (Flash)
Когда узнал о проекте впервые — его будущее было довольно неопределенным, а популярность даже по тем же звёздам на гитхабе сомнительная. Год спустя я читаю об AssemblyScript на Хабре. Я все ещё офигеваю как робкая инициатива одного человека может повлиять на целую индустрию, если ты делаешь что-то по-кайфу именно для себя.
AssemblyScript, конечно же далек от TypeScript. Точно так же, как JS далек от TS.
Однако, разработчик на JS без труда может поправить код на TS(всякое бывает), запустить тесты и со спокойной душой сделать деплой. Точно так же, при необходимости, можно и легко исправить код на AS, запустить тесты и деплойнуть. Напомню, что все это потребует от разработка только установки модулей проекта, без необходимости ставить другое ПО и погружаться совершенно в другой контекст. А в случае AS у вас ещё и синтаксис наследуется от TS, а это далеко не то же самое, чем фигачить сразу на C/C++.
Первое знакомство с AssemblyScript