Following practical lisp