Software Transactional Memory: a modular composable concurrency
abstraction. See

    * Composable memory transactions, by Tim Harris, Simon Marlow,
      Simon Peyton Jones, and Maurice Herlihy, in /ACM Conference on
      Principles and Practice of Parallel Programming/
      2005. http://research.microsoft.com/Users/simonpj/papers/stm/index.htm
