build your own lisp in C