Comments 4
Объемная работа !
Книги по WebAssembly читал когда ещё, обратил внимание, что они, как правило, не по ней как таковой, а по какому-то языку в неё компилируемому. И чем книга лучше, тем вероятнее, что содержит пассаж типа "сама по WebAssembly не гарантирует ... (прирост скорости, например), но мы ведь любим писать на ... (да на том же Rust), правда?".
Мой любимый дурацкий тест на reality check (числа Фибоначчи) показал, что С в WebAssembly процентов на 20 быстрее чем JavaScript, но только не когда iPad, где С раза в полтора медленнее. Что соответствует тем же дурацким тестом сравнению Node.js, Deno и Bun, кстати.
Что характернго - никакого влияния пересечение границ и прочая в этом тесте не имеют.
При чём тут, в сравнении скорости, TypeScript - не постигаю, вместо него следует читать JavaScript. А если вдруг есть подозрение что TypeScript, или там Dart совершенно аналогично, косячит - нужно приводить результат JavaScript отдельно.
Раздел "Ключевые выводы", как по мне, выводов не содержит, перечисление фактов вместо них. Как по мне опять, вывод мог бы быть таким - прежде чем соваться в WebAssembly, определитесь зачем. Чтобы модно смотреться, периспользовать код, применять именно нужные абстракции, насладиться песочницей - всё подойдёт, кроме скорости.
Мы переписали наш парсер WASM с Rust на TypeScript — и он ускорился в три раза