Clojure Gazette 1.18
Persistent Data Structures.
Clojure Gazette
Issue 1.18 - August 10, 2012
editorial
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.
Have fun!
Eric Normand
PS I love to hear from readers. Just reply to this email to get in
touch!
PPS Tell your friends about the Clojure Gazette.
theoretical introduction
Purely Functional Data Structures
Chris Okasaki's PhD thesis on persistent data structures is the bestintroduction I've read.
smorgasbord
What's new in purely functional data structures since Okasaki?
The answer to this Stack Exchange question lists many, many papersdescribing a wide variety of persistent data structures.
video explanation
Extreme Cleverness: Functional Data Structures in Scala
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.
sponsored link
Consider purchasing a sponsored link in the Clojure Gazette.
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
Organizing Functional Code for Parallel Execution; or, foldl and foldr Considered Slightly Harmful
Guy Steele shows a better abstraction for persistent lists in today's multicore world.
value and identity
Persistent Data Structures and Managed References
Rich Hickey relates Persistent Data Structures to the idea of value,identity, and concurrency.
from Java
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.
bonus
"Books that influenced Clojure, in no particular order". --- Rich Hickey
Mustread!