(FILECREATED "24-Mar-86 16:39:38" {ROSEBOWL}<FEUERMAN>LISP>QUEUE.;1 1038   

      changes to:  (VARS QUEUECOMS)
		   (FNS QUEUE.DEQUEUE QUEUE.ENQUEUE QUEUE.CREATE))


(PRETTYCOMPRINT QUEUECOMS)

(RPAQQ QUEUECOMS ((FNS QUEUE.CREATE QUEUE.DEQUEUE QUEUE.ENQUEUE)))
(DEFINEQ

(QUEUE.CREATE
  [LAMBDA NIL                                                (* Feuerman "24-Mar-86 14:20")

          (* * Creates and returns an instance of a new queue.)


    (CONS NIL NIL])

(QUEUE.DEQUEUE
  [LAMBDA (Q)                                                (* Feuerman "24-Mar-86 16:35")
    (PROG1 (CAAR Q)
	     (RPLACA Q (CDAR Q))
	     (OR (CAR Q)
		   (RPLACD Q NIL])

(QUEUE.ENQUEUE
  [LAMBDA (Q ITEM)                                           (* Feuerman "24-Mar-86 14:25")
    (COND
      ((CDR Q)
	(RPLACD (CDR Q)
		  (CONS ITEM))
	(RPLACD Q (CDDR Q)))
      (T (RPLACA Q (CONS ITEM))
	 (RPLACD Q (CAR Q])
)
(DECLARE: DONTCOPY
  (FILEMAP (NIL (273 1016 (QUEUE.CREATE 283 . 491) (QUEUE.DEQUEUE 493 . 720) (QUEUE.ENQUEUE 722 . 1014))
)))
STOP