I've been participating in this fascinating discussion with Rich Hickey, the author of Clojure about Software Transactional Memory. I decided to cleanup and echo the conversation here, but the original can be found here. The Problem Statement: it's not "atomic-vs-lock" but instead it's "where do we put atomic/lock?" Randall R Schulz I found the following comment on an Azul Systems blog (http://b