TeaVM se puede utilizar para transpilar el código de bytes de JVM a WebAssembly. Puede consultar la página de inicio del proyecto en https://github.com/konsoletyper/teavm .
TeaVM en su núcleo puede transpilar código de bytes JVM a JS y WebAssembly. El soporte de WebAssembly se encuentra en una etapa temprana, pero hay demostraciones disponibles para comparar el rendimiento de una simulación JBox2D simple con GWT, TeaVM (salida JS) y TeaVM (salida WASM), que son bastante impresionantes.
Tenga en cuenta que WebAssembly actualmente no tiene acceso directo al DOM u otras API de JavaScript. Además, en el MVP actual no hay soporte para tipos de datos opacos o incluso el GC. Sin embargo, es posible realizar llamadas ascendentes / descendentes de JS a WASM y viceversa utilizando algunos trucos de JS, como se ve en las demostraciones mencionadas.