March 31, 2026
Retro brain meets galaxy brain
Forth VM and compiler written in C++ and Scryer Prolog
Tiny retro computer remix ignites nerd brawl — built with modern C++ and a logic language
TLDR: A hobbyist built a tiny 16‑bit virtual computer for the throwback Forth language and a small compiler in Prolog. Commenters split between “useless museum toy” and “brilliant teaching demo,” with bonus skirmishes over the 16‑bit choice and “why not Rust?”—a nostalgic flashpoint that doubles as a learning tool.
The internet just lit up over a tiny “virtual computer” that speaks the retro language Forth and compiles code using Prolog—yes, the logic puzzle one. The project is a 16‑bit stack machine (think: a very small imaginary computer) written in modern C++, paired with a statically typed, parentheses‑based compiler (hello, S‑expressions) built on Scryer Prolog. You type “make,” run a tiny echo program, and boom: discourse unleashed.
Fans are calling it a “galaxy‑brain flex” and a love letter to retro computing. One camp says it’s the perfect bite‑size playground for learning how computers tick: simple VM, clear compiler, and a clean weekend build. Another fires back with “Why 16‑bit in 2026?” and “Cute museum piece, not useful.” Cue the side‑quest: the inevitable “should’ve written it in Rust” chorus versus folks defending “C++ is fine, touch grass.”
Then there’s the identity crisis meme: Forth on the outside, Lisp vibes on the inside—“Is this a Forth wearing a Lisp wig?” cracked one commenter. Jokes rolled in: “Finally a VM I can understand before coffee,” “Stack‑based? Same as my laundry,” and “Achievement unlocked: echo.” Whether you see it as toy or teaching tool, the community’s split is loud, funny, and very online. This petite project didn’t just compile; it compiled opinions, and they’re running hot.
Key Points
- •The project provides a 16-bit stack-based virtual machine named “forth-vm.”
- •It includes a statically-typed s-expression compiler called “sets.”
- •The VM is implemented in C++20.
- •The compiler is implemented in Scryer Prolog.
- •Build, run, and test instructions are provided: make, ./run programs/echo.sets, and make test.