Anonymous user
Queue/Definition: Difference between revisions
no edit summary
m (→{{header|GAP}}) |
No edit summary |
||
Line 12:
See [[FIFO (usage)]] for the built-in FIFO or queue of your language or standard library.
=={{header|ACL2}}==
<lang Lisp>(defun enqueue (x xs)
(cons x xs))
(defun dequeue (xs)
(declare (xargs :guard (and (consp xs)
(true-listp xs))))
(if (or (endp xs) (endp (rest xs)))
(mv (first xs) nil)
(mv-let (x ys)
(dequeue (rest xs))
(mv x (cons (first xs) ys)))))
(defun empty (xs)
(endp xs))</lang>
=={{header|Ada}}==
|