Judging by the slow speed of node here, I wonder if it was run without forcing optimizations. It doesn't do OSR (on-stack replacement), meaning that a benchmark script doesn't get a chance to tier up from the baseline compiler to the fully optimized tier.<p>Running with<p>node --no-liftoff<p>avoids this problem.<p>(This is not an issue on the Web, where code must return to the event loop anyhow, allowing tiering up to work, and node is optimized for that kind of workflow.)
It'd be nice to see memory use. Ideally base usage, then cost of running 1 of a thing, then cost of running 50 if a thing.<p>Personally low my 50% speed vs native does not sound like the worst to me. I've spent years using perl, java (in v4-v7 days), node... These have various ways they are less good than native, and we collectively seem to accept that. Ideally yes wasm gets faster but a 2x is pretty ok!
CSS ... sound success story.
HTML ... sound success story.
JavaScript ... sound success story.<p>WebAssembly right now simply is not. Will it ever become a sound success story? There is so little impact it has made so far after almost 10 years. We still don't have all applications running super-fast on the web. This is a failure.
Is speeding up apps an aim of WebAssembly? I’m not being sarcastic… most of the slowdown you see in webapps is due to the DOM and/or network latency and WebAssembly offers nothing new there. The JavaScript language is very rarely the reason why an app is slow.<p>I’ve used WebAssembly to great success creating a unified codebase that runs on Node, an iOS app and on the web. It’s a niche but in that area it opens doors that were previously impossible to open.
My only issue with WASM is that it forces me to contort my platform abstraction later to terrible web APIs. Other than that it's great. I can compile C++ with plain clang or the WASI SDK, and it runs everywhere at near native speeds with minimal boilerplate.
I agree. It is mostly a solution looking for a problem and has close to the same functional downsides as Flash or Applets other than "transparency".<p>Its 'sandbox' is also escapeable at both the engine level in V8, Gecko and JavaScriptCore (All in C/C++) and at the implementation level; especially if the software was converted from C to WASM.<p>So it is not the silver bullet people think it is.<p>[0] <a href="https://nvd.nist.gov/vuln/detail/cve-2026-11645" rel="nofollow">https://nvd.nist.gov/vuln/detail/cve-2026-11645</a><p>[1] <a href="https://issues.chromium.org/issues/334120897" rel="nofollow">https://issues.chromium.org/issues/334120897</a><p>[2] <a href="https://trustsig.eu/blog/wasm2c-tableflip-unchecked-calloc/" rel="nofollow">https://trustsig.eu/blog/wasm2c-tableflip-unchecked-calloc/</a>