@msimoni: I created this in one day, and it's a bit of a frankenlanguage, but it does have some interesting ideas and results: Id…
Summary
A developer created Idle, a statically-typed, low-level Lisp for WebAssembly GC with interesting features like O(1) method lookups and macros loaded from Wasm modules.
View Cached Full Text
Cached at: 08/25/26, 06:08 PM
I created this in one day, and it’s a bit of a frankenlanguage, but it does have some interesting ideas and results:
Idle: A statically-typed, low-level “Lisp” for Wasm GC
-
A simple single-inheritance object system that allows O(1) method lookups based on Wasm GC type information.
-
Lisp syntax with macros that are loaded from WebAssembly modules. Macros receive and return syntax forms (conses) as normal GC’ed objects.
-
Static type checking for the object system and method calls. Only subsections of code need to be typed, user can use full .wat syntax elsewhere.
On V8, seems to perform well relative to mature compilers like Guile and JS with very little code. Implementation vibed, but not too shabby.
Since this is WIP, for now a clanker-written article will have to suffice, see below.
Similar Articles
@msimoni: This shows that with some very mild macrology, WebAssembly is almost a recognizable Lisp you can write directly.
The article discusses how WebAssembly can be approached with Lisp-like macros to make its syntax more human-friendly, referencing a past JavaScript implementation by Joel Martin.
@msimoni: Hash table code from my new language for Wasm GC. It's completely static, and you must write all types manually (there …
A developer shares code for a hash table in a new static language designed for WebAssembly GC, highlighting manual type requirements and decent performance with a toy compiler.
What are you doing this weekend?
A developer shares their weekend project of building a low-level infix language that compiles to WebAssembly, and offers a personal ranking of AI coding tools from contextual autocomplete to frontier models.
@msimoni: https://v8.dev/blog/wasm-speculative-optimizations…
V8 has implemented speculative call_indirect inlining and deoptimization support for WebAssembly, significantly improving performance, especially for WasmGC programs with speedups up to 50% in benchmarks.
7 lines of code, 3 minutes: Implement a programming language (2010)
This article presents a minimalist 7-line interpreter for a Turing-equivalent functional language based on lambda calculus, demonstrating the eval/apply design pattern.