Interpreters & Compilers

mgclisp REPL

While my love of programming is multifaceted, one of my main areas of interest in is the design and development of programming languages, their interpretation, and compilation.

While I am far from an expert on the subject, I have dedicated a good amount of time amassing resources and learning what I can on the subject including a small personal library of reference material. I have collected here some of my own efforts with the hope that others find them useful to their own pursuits.

Interpreters, Compilers & Related Projects

Owlscript – A dynamically typed Algol like language, implemented as a tree walking interpreter. Featuring lexical scoping, nested procedures, first class functions, lambda functions with support for closures, and built-in lists.

MGCLisp – a scheme interpreter written in C++,

SimpleLang – This is a “jumping off point” project I put together for people who want to learn more about interpreters. It implements basic algebraic operators, assignment, test for aquality and compare with less than. It also has named variables, an if statement, a loop statement, and functions.

MGCBasic – A derivative of the BASIC programming language, inspired by my experiences using Tiny BASIC on a TRS-80 and QBasic 4.5 growing up.

MGCsm – a simple stack machine developed in the course of writing several posts on Virtual Machines and Compilers.