ERD-TS Self-Hosted Compiler (Progress Update)
ERD-Compiler v1.0.0
Today I am sharing an important development milestone for the ERD-TS platform.
The ERD-TS compiler is now able to compile itself.
The compiler source can be compiled to ERD-TS bytecode and executed entirely inside the ERD-TS runtime. This means the platform is now capable of building its own toolchain without relying on an external Node.js environment.
While this is not yet released as v1, the self-hosted compiler is already running in practice.
The playground on ERDesigns.be now uses the self-hosted compiler to compile and execute examples. Compilation happens server-side using the ERD-TS compiler itself, and the resulting bytecode is executed inside the ERD-TS runtime running in WebAssembly.
This setup allows users to experiment with ERD-TS directly in the browser, without installing any tools.
Why self-hosting matters
Self-hosting is one of the strongest validation points for a language platform.
Compilers are complex workloads. They stress almost every subsystem of a runtime:
-
memory allocation
-
control flow
-
object management
-
string processing
-
module loading
-
diagnostics and error handling
Running the compiler inside the runtime provides a real-world integration test for the entire stack.
It confirms that the compiler, bytecode format, runtime semantics, and standard library work together consistently.
Current status
The self-hosted compiler is already functional and stable enough to power the online playground.
Recent work has focused on strengthening the runtime in preparation for v1:
-
generational moving garbage collector with safe handles
-
improved inline cache behavior
-
super-instructions for common opcode patterns
-
stability testing through long running self-hosted compilation loops
These changes ensure the platform can handle demanding workloads reliably.
What comes next
Although the compiler is already usable, v1 will only be released once the platform reaches the required stability level.
Current work focuses on:
-
TypeScript semantic parity
-
additional soak testing
-
final runtime hardening
The goal is not just to release a compiler, but to establish a stable execution platform that can support a full ecosystem of tools.
More updates soon.