Use of Mutable Data Structures in Clojure
One of Clojure’s biggest strengths is that it is backed by the JVM, and has good interoperability with the Java libraries. When I needed to implement a simulation with events that should be executed in order of their timestamp, I was immediately tempted to use Java’s PriorityBlockingQueue, since neither sorted-map nor sorted-set supported two events [...]
Read the rest of this entry »