(defvar stack nil) (defun clears () (setq stack nil)) (defun adds (x) (setq stack (cons x stack))) (defun rems () (if (null stack) nil (prog1 (car stack) (setq stack (cdr stack))))) (defvar queuefront nil) (defvar queueend nil) (defun clearq () (progn (setq queuefront nil) (setq queueend nil))) (defun addq (x) (if (null queuefront) (progn (setq queuefront (list x)) (setq queueend queuefront)) (progn (rplacd queueend (list x)) (setq queueend (cdr queueend))))) (defun remq () (if (null queuefront) nil (prog1 (car queuefront) (setq queuefront (cdr queuefront)) (when (null queuefront) (setq queueend nil)))))