Building a Forth Interpreter in Lisp to Explore Meta-Programming

Lisp moving Forth moving Lisp

I implement a Forth interpreter within Lisp to demonstrate the power of macro abstractions and the duality of syntax. This project honors Forth's unique history as a grassroots language designed for simplicity and resource constraints. By adapting Forth's stack-based architecture to Lisp's flexible environment, I explore how both languages serve as building materials for creating custom programming tools rather than just rigid standards.

Like Lisp, Forth is not so much a programming language or a set of standards, but instead a building material and collection of wisdom regarding what works and what doesn't.
  1. Vohlenzer

    I finished Let Over Lambda recently. I'm not an experienced lisp programmer but it's strangely readable if you allow yourself to not understand every little detail of the Common Lisp code. For example I hadn't read On Lisp. I had read The Little Schemer.

    It's a wonderful tour of advanced macro concepts. With several of the macros presented I found myself saying "well that's just x language feature in y" but that's missing the point. The point is that Common Lisp allows you to implement your own language features, with macros of course!

    This chapter is a wonderful climax to the whole book. Lisp moving Forth moving Lisp reminded me of the intertwined nature of DNA, RNA and proteins in Biology.

    There's great humour throughout the book, I especially enjoyed the little sideways jabs at Scheme programmers!

  2. kamaal

    I learned some Forth and played around right before the LLM trend began.

    It was a mind bending experience, although I quit after a while as the programs were kind of glass sheet quality brittle as they grew.

    Sometimes I feel I need to start again to keep my brain from losing thinking skills over time.

More from this day

2026-07-29