BAD ("By Austin Dumm") Lisp was my first attempt at a
full language interpreter. It has a focus on exploring Rust as an
implementation language and exploring interpreter and Lisp features such as:
Lexing
Parsing
Tree-Walking Evaluation
Code Generation
Tail Recursion
Delimited Continuations
The resulting interpreter is very slow, but was used to create a SHA-1 hashing
program and a meta-circular evaluator. For more of my thoughts on programming
languages, interpreters, and developing in general, check out my
developer blog posts.