
Hacker News · Mar 1, 2026 · Collected from RSS
Article URL: https://matthewphillips.info/programming/posts/i-built-a-scheme-compiler-with-ai/ Comments URL: https://news.ycombinator.com/item?id=47208423 Points: 8 # Comments: 3
Inspired seeing others quickly built near-production level things that would normally take months or years, I decided to do something that only I would care about: build a Scheme compiler to WASM. I call it Puppy Scheme. And it happened way faster than I expected. This is a side project so I’m not exactly sure the total number of hours I spent; it was most of last weekend plus an hour or two a couple of weekday nights, but that’s really it. One night before I went to bed I told Claude to “grind on performance” and when I woke up it had taken compilation time from 3½ minutes down to 11 seconds. Just incredible stuff. The compiler is definitely still alpha quality but the number of features is impressive for how little time I spent on it. It has: Support for 73% of R5RS and R7RS Support for WASI 2 and the Component Model Uses WASM GC Pretty good dead-code elimination, creating small binaries Self-hosting - Puppy compiles its own source code to puppyc.wasm A wasmtime wrapper to create native binaries A website I built that runs on Puppy wasm in Cloudflare Workers. See the code. I also started working on a little component model that looks a little like this: (define count 0) (define (counter-view) (html (div (@ (class "counter")) (button (@ (on "click" "on_decrement")) "-") (span (@ (class "count")) ,(number->string count)) (button (@ (on "click" "on_increment")) "+")))) (define (handle-event handler) (cond ((equal? handler "on_decrement") (if (> count 0) (set! count (- count 1)))) ((equal? handler "on_increment") (set! count (+ count 1))))) There’s probably more I built that I have already forgotten about. I run into bugs all the time so it’s probably not ready for anyone other than me to use, but I’ve managed to go pretty deep (if not wide) in just a few days of work. We’ve definitely entered a new world. This is a side-project so I can’t promise too much and am not sure where I’ll take it from here, but if you’re interesting, puppy-scheme.org is where you can check it out.