Программная транзакционная память - пример компоновки

Одно из основных преимуществ программной транзакционной памяти, о котором всегда упоминают, - это возможность компоновки и модульность. Различные фрагменты можно комбинировать для получения более крупных компонентов. В программах, основанных на блокировках, это часто не так.

Я ищу простой пример, иллюстрирующий это реальным кодом. Я бы предпочел пример на Clojure, но Haskell тоже подойдет. Бонусные баллы, если в примере также присутствует код на основе блокировки, который нелегко составить.

17
задан Don Stewart 4 May 2011 в 16:25
поделиться