A while ago I shared W++, a playful .NET-style scripting language that originally used Blazor for running in the browser. That version worked, but it relied heavily on the .NET toolchain and still felt… HTML-ish.
I’ve now reworked it completely: W++ compiles directly to raw WebAssembly using wasm-encoder in Rust. It no longer uses Blazor or any .NET runtime — just a minimal WASM module that runs in the browser and prints "hello from W++" through a JS-hosted print(ptr, len) function.
No DOM, no frameworks, no Blazor. Just:
Rust → WASM
A custom transpiler for W++
A small HTML shell to satisfy browser loading requirements
Yes, you still need a tiny bit of HTML to load the .wasm file (because of how browsers work), but this demo proves that you can build and run a script-powered experience on the web without relying on the DOM at all.
The dream: semantic WASM instead of semantic HTML.
GitHub repo: https://github.com/sinisterMage/WPlusPlusWASM Would love your thoughts or ideas!