Lust is a small Lisp-like programming language. It has three primary goals:

  1. Serve as an excuse for me to learn more about putting together programming languages.
  2. Provide the flexability of a dynamic language like Python or Lisp.
  3. Be quick! We're on track for fasster than Python™️.

Lust is still a work in progress but the core is reasonably stable now. At this point I don't expect to break programs written in Lust that don't use the standard library


Hello world.

(println "hello world!")

A when macro.

(setq when (macro (cond body) `(if ,cond ,body ())))

Inspecting the when macro in a Lust REPL.

lust> (import 'std)
lust> (macroexpand (when 1 2))
=> (if 1 2 ())


  1. The core language.