Читал малыш, читал. Ну и обдумал что происходит на деле выкинув шелуху маркетологов. Давай обдумайем.А. Что сейчас с JavaScript:
1. Сейчас есть JavaScript-лапша которая может исполнятся в приложениях которые переваривют его: это вебраузеры, программы написанные на QT,GTK с "webkit" и т.п.
2. JavaScript-лапшу исполняет виртуальная машина.
3. Исполнение JavaScript-лапши - это грубо говоря использование API виртуальной машины для обработки и управления данными. Исполнением кода может быть как вызов тех самых С/С++ функции виртуальной машины (так как на этих языках пишутся виртуальные машины), так и непосредственное исполнение кода на железе.
4. Впихнув в mousepad виртуальную машину для переваривания JS-лапши и связав ее с представлением документа в mousepad мы получим еще один софт который переваривает JS-лапшу. А рядом будет gedit который просто делает свою работу.
Б. Что ожидается с WebAssembly:
1. Вместо JS-лапши будет двоичный блоб. Та же логика будет представлена не в виде читабельного JS-текста, а двоичного блоба который не читаем сходу, т.е. придется декомпилировать если не будет сорцов. Исполнять ее смогут те программы которые будут внутри себя нести виртуальную машину на которой будет исполнятся блоб. Ой, это прямо как с JS-лапшой сейчас - выполнять JS-лапшу могут только те программы которые внутри себя несут виртуальную машину для исполнения JS.
2. Исполнять блоб будет виртуальная машина, т.е. прямо как сейчас с JS-лапшой с той лишь разницей что сейчас на входе JS-лапша, а будет блоб. При этом оба могут реализовывать один и тот же алгоритм, т.е. отличие в преставлении.
3. Исполнение блоба - это грубо говоря использование API виртуальной машины для обработки и управления данными. Исполнением кода может быть как вызов тех самых С/С++ функции виртуальной машины (так как на этих языках пишутся виртуальные машины), так и непосредственное исполнение кода на железе. То есть все как с JS-лапшой.
4. Впихнув в mousepad виртуальную машину для переваривания блоба и связав ее с представлением документа в mousepad мы получим еще один софт который переваривает блоб. А рядом будет gedit который просто делает свою работу.
Итого - разница лишь в представлении: сейчас логика описана на JS-лапше которая компилируется в блоб (хранится в памяти процесса после компиляции) и следом исполняется, а будет прилетать сразу компилированный блоб который будет исполняться.
Ведь уже были проекты которые код на других языках гнали в JS-лапшу которая потом компилировалась и исполнялалсь на виртуальной машине, а теперь будут делать то же самое только убрали JS-слой. Так что это те же яйца, только вид сбоку.
Так что это просто формат.
ps: Я пишу об элементарных и очевидных вещах, т.е. капитаню. Если вам это все в новинку и не понятно - то, я поздравляю вас с тем что вы - настоящий web-"программист". Но таких web-"программистов" я предпочитаю называть просто web-верстальщиками.