logoalt Hacker News

zb3today at 6:53 PM1 replyview on HN

No no no, wasm has shitty speed if you want to emulate something (it doesn't even support JIT), the problem is in its architecture (tons of restrictions like no self modifying code, no jumps).. this can't be fixed, we need something real, something like WebKVM.


Replies

titzertoday at 7:07 PM

On the web you can dynamically create new Wasm modules and use JS APIs to load them, though there are ergonomic issues. There are per-module costs and systems like CheerpJ and CheerpX currently do batching of multiple functions into a module to mitigate the per-module costs.

I've created a proposal to add a fine-grained JIT interface: https://github.com/webassembly/jit-interface

It allows generating new code one function at a time and a robust way to control what the new code can access within the generating module.