Is there a double-ended queue in Clojure? My impression is Clojure's PersistentQueue is single ended (am I wrong?). I need to be able to remove (i.e. "pop") and "peek" at data from either end of the queue. An explanation of what I mean by a double-ended queue is https://en.wikipedia.org/wiki/Double-ended_queue.
I see that Java has a double-ended queue, but I'm unsure how to instantiate the queue object in Clojure. Tried creating a new queue with:
(java.util.Dequeue.) Gives error:
No matching ctor found for interface java.util.Queue.