Hacker News new | ask | show | jobs
by stkdump 27 days ago
There goes my plan to use js code generation at runtime to make my algorithms faster. Doing this with wasm will be much harder.
6 comments

Generating wasm code at runtime is pretty easy (I'd imagine easier than generating valid asm.js code). We have a little library for our tests that handles a lot of it: https://searchfox.org/firefox-main/source/js/src/jit-test/li...
There's still AssemblyScript? It might meet your requirements, unless I'm misunderstanding you or the features of it.

https://www.assemblyscript.org/

Just try the asm.js subset and see how it performs for you, I remember that even without the special asm.js support in browsers Emscripten output performance was surprisingly good
In fact, I think it was only firefox that made a special JIT route. Chrome moved optimizations into the regular JIT.
It will still work. asm.js is just regular JavaScript code, after all. It just won't parse/run as fast as custom pipeline for asm.js. My guess is that you will not notice much difference unless you have a really huge application.
If you use a library it's not harder. In Rust you would use something like this, https://crates.io/crates/wasm-encoder

While in JS you would probably use https://www.npmjs.com/package/binaryen

There are some WAT compilers that are small and fast for running in the browser.