Is it still worth it to target JS, meaning asm.js, over WebAssembly that is now stable and in the major browers?
Rust has tier 2 support for both by now (both for only “std”):
asmjs-unknown-emscripten ✓ asm.js via Emscripten
[…]
wasm32-unknown-emscripten ✓ WebAssembly via Emscripten
I believe they targeted asm.js before WebAssembly (and they first to support the latter after C/C++ you get from Emscripten).
Version 1.14.0 (2016-12-22)
[…]
This release includes experimental support for WebAssembly, via the wasm32-unknown-emscripten target. This target is known to have major defects. Please test, report, and fix.
They might have different priorities, as they do not have a GC or e.g. BLAS dependency… WebAssembly doesn’t support GC (in the first version), but it seems we could just compile ours to work in WebAssembly.
Another factor is if you want to interopt with JS code.
[ I see they also have other [unrelated] interesting targets 16-bit (or 20-bit variant?) TI MSP430 - Wikipedia and "Preliminary Solaris/SPARCv9 ]