( LET ( (stack () ) ) (defun push (X) (setq stack (cons X stack))) (defun pop ( ) (setq stack (cdr stack))) (defun top ( ) (car stack)) (defun empty( ) (null stack)) )