By Michael Fogus and Chris Houser
This article is taken from the book The Joy of Clojure. The authors discuss structural sharing using xconj and how it eliminates the need for full copy-on-write.

Designing a persistent toy (PDF)