Mini Languages

I enjoy creating programming languages.

The joy, the self-surprise of writing a first original program or stringing together an original sentence in a foreign language, but now one whose words and grammar you have forged out of baser things.

It turns out I've written a few small ones on purpose, and many more by accident.

I've used Clojure for many of them. Jeanine Adkisson has given a couple of talks that relate to developing computer languages and demonstrate some relevant strengths of Clojure for building them.

I've also implemented a couple using Dart. Dart has been unreasonably productive to work in, both by virtue of its design and the excellent tooling and documentation that surround it. I just have to walk around the sharp edges of mutable state a little more carefully than I do in Clojure.

Keep an eye on the mini-language feed for upcoming posts about how and why I made some of these languages.

Tags: mini-language clojure programming-language dart

Copyright © 2023 Daniel Gregoire