Clojure Gazette 1.18
Persistent Data Structures.
Issue 1.18 - August 10, 2012
Clojure and Persistent Data Structures?
Anyone who has programmed in Clojure for a time has come to rely onthe speedy, persistent data structures available in Clojure. But howdo they work?
In this issue, I explore the background of persistent data structuresfrom computer science and how Clojure has innovated in the field andincorporated them.
PS I love to hear from readers. Just reply to this email to get in
PPS Tell your friends about the Clojure Gazette.
Chris Okasaki's PhD thesis on persistent data structures is the bestintroduction I've read.
The answer to this Stack Exchange question lists many, many papersdescribing a wide variety of persistent data structures.
With great wit, Daniel Spiewak implements many persistent datastructures, some of which were invented by Rich Hickey for Clojure.One interesting stat is that for very large amounts of data (greaterthan 2 billion items), Clojure vecs perform better thanjava.util.ArrayList for random access.
The Clojure Gazette reaches the inbox of over one thousand highly educated Clojure enthusiasts each week. The Gazette is also syndicated on Planet Clojure, where it reaches a larger and wider audience. Advertising on the Gazette is the best way to reach the best Clojure programmers.
If you have a high quality product,service, or event , a link to your site and a promotional description may be a good fit. Get in touchand we'll talk.
the inimitable guy steele
Guy Steele shows a better abstraction for persistent lists in today's multicore world.
value and identity
Rich Hickey relates Persistent Data Structures to the idea of value,identity, and concurrency.
The Clojure data structures, which are implemented in Java, pulled outand disentangled with other Clojure code. This library can easily beimported in any Java application. It could be a great way to use thebest of Clojure from within Java.
"Books that influenced Clojure, in no particular order". --- Rich Hickey