Comment by azakai

3 months ago

The JVM is designed around Java. That's really the main difference, and it brings some downsides for the goals of wasm, which include running native code - think C++ or Rust. The JVM is great at Java, which relies on runtime inlining etc., but not at C++, which assumes ahead-of-time inlining and other optimizations.

I don't understand how the virtual machine would preclude you from in-lining ahead of time...? That's done when you're compiling.

What is WASM doing to facilitate recompiling native code that isn't practical to do on the JVM