Comparing the performance of concurrent linked-list implementations in Haskell
Martin Sulzmann, Edmund S. L. Lam, Simon Marlow · 2009
Haskell has a rich set of synchronization primitives for implementing shared-state concurrency abstractions, ranging from the very high level (Software Transactional Memory) to the very low level (mutable variables with atomic read-modify-write).