Upvoting works: https://ask.clojure.org/index.php/3821/add-queue-and-queue-to-clojure-core
well sort of lol, the data reader one had 9 upvotes
they use votes to determine what to evaluate, certainly
#queue [:a :b :c]
(queue :a :b :c)
Hard to justify that first syntax when we'll have the second one 🙂
I suspect we'll continue to grumble about printing tho'...?This made me curious about our use of PersistentQueue. We have just three uses in 150k lines:
• in a test, dealing with file descriptor stability over time(!)
• in production code but only to assist with debugging (in a global atom)
• in production code where we genuinely need a queue
So, yeah, I agree with the reasoning here that a literal syntax is really not warranted.
Makes sense. I've found it easy enough to implement my own literals. In general, I've yet to hit a situation where something lacking support in core has outright prevented me from accomplishing my goal. Which, pretty sure Clojure is the only language I've worked in where that's the case.
But Noah, I'm sympathetic to your desire for dialect parity. It will likely need to be solved at the library level.
what parity are you missing? I think it's very uncommon to need to represent a literal queue across edn (vs a vector or list)
I have only ever used persistent queues to hold data being processed dynamically at runtime. queues are not even useful across threads unless you put them in some other stateful holder like an atom
My parity comment wasn't necessarily related to the issue in this thread.