Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Clojure-based x86 assembler and toy Lisp compiler
Latest commit dd67550 @nathell Introduce global-env-start into the compilation state, assign memory …
…for global def'd variables from there.

Lithium is an attempt at several things at once:

  • An assembler for x86 CPUs, written in Clojure and using Clojure S-expressions as its input data. This part has been first announced in this blog post.
  • A compiler for a toy Lisp-like language, using that assembler as a backend. The compiler is being written following the guidelines found in a paper "An Incremental Approach to Compiler Construction."

The purposes of Lithium are, first and foremost, to learn and to have fun.

License: MIT.

Something went wrong with that request. Please try again.