JSConf JP

Compiling Your Language to WasmGC & Friends

LTTrack AEnglish

WasmGC makes it possible to compile garbage-collected languages to WebAssembly. However, a real world compiler backend still has to solve some problems: mapping a rich type system onto WasmGC, bridging async code with JSPI, and using Custom Descriptors so Wasm objects can carry JS prototypes.

In this lightning talk, I'll walk through these pieces using Scala.js, the Scala-to-JS/Wasm compiler, as an example, and talk about the question everyone actually cares about: is it fast yet? I'll share benchmark numbers comparing a WasmGC backend against JS backend.