Basic Scheme interpreter written in C++, probably doesn't follow all the standards