A WASM module can implement an interpreter for another bytecode stored in its linear memory. That interpreter reads data bytes and decides what to do. This is not the same as jumping into linear memory as executable code.

  • A self-hosted tool can parse bytes, validate a toy language, and interpret it inside WASM.
  • To compile generated WASM bytes into a real module, the bytes must be passed to a host API such as JavaScript `WebAssembly.compile`.