Lisp interpreter in C++