dado un PersistentQueue en una ref:¿Cuál es la forma idiomática de mostrar un PersistentQueue en una referencia?
(def pq (ref clojure.lang.PersistentQueue/EMPTY))
Cuál es la forma idiomática para hacer estallar la cola y obtener el resultado?
Mi mejor intento para su crítica:
(defn qpop [queue-ref]
(dosync
(let [item (peek @queue-ref)]
(alter queue-ref pop)
item))
vuelve alterar el valor de transacción de la cola de la que se extrae ya, así que no se puede simplemente hacer el altar por sí mismo.
Idiomatic para agregar a la cola sería: (dosync (alter pq conj new-item)) –