Faster compiler, snappier playground

Published: October 18, 2026
compiler playground performance wasm

The compiler is faster, and so is the playground that runs it.

-O3 Release for every host build

All host builds of the compiler and runtime now use -O3 Release. ESP32 firmware stays size-optimized (-Os), because flash size matters there. The playground's WebAssembly build and the compiler that runs on this website are built the same way.

The effect is easy to see on a large input. A self-hosted compile of the assert.ts example took 33.2 s on the old size-optimized build and takes 14.3 s now.


Compiler and runtime work

  • A compile cache for regular expressions, and regex literals are validated once.
  • String concatenation happens in place.
  • Faster property lookup, and a fast path for strict equality.
  • Speedups in semantic analysis.
  • Several GC-safety fixes found along the way.


New in the command line

erd-compiler build --config lets the project config and its profile decide the build; flags given on the command line override it. capabilities --json prints the capability information in machine-readable form.


Compiler fixes

  • Optional chaining.
  • Typing of Proxy targets.
  • Import-type aliases.


Playground

The compiler is now pre-warmed on every deployment, meaning less waiting time and faster iterations. And we added compiler settings, which means you can change all the settings the compiler supports. These include profiles, optimizers, traces, and much more.


Try it out yourself in our online playground!

Back to Journal