build my own pet compiler with lisp syntax