Scheme Interpreter for Programming Languages course.