The following macros are in the USEFUL package. They are convenient for adding and deleting
things from the head of a list.
(push ITM:any STK:list): any                                                                                 macro
 (push item stack) is equivalent to
(setf stack (cons item stack))
 
(pop STK:list): any                                                                                                   macro
 (pop stack) does (setf stack (cdr stack)) and returns the item popped off
stack. An additional argument may be supplied to Pop, in which case it is a
variable which is SetQ’d to the popped value.