Writing concurrent programs is notoriously difficult, and is of increasing practical importance. A particular source of concern is that even correctly-implemented concurrency abstractions cannot be composed together to form larger abstractions. In this paper we present a new concurrency model, based on <i>transactional memory</i>, that offers far richer composition. All the usual benefits of transactional memory are present (e.g. freedom from deadlock), but in addition we describe new modular forms of <i>blocking</i> and <i>choice</i> that have been inaccessible in earlier work.
%0 Conference Paper
%1 Harris:2005
%A Harris, Tim
%A Marlow, Simon
%A Peyton-Jones, Simon
%A Herlihy, Maurice
%B Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
%C New York, NY, USA
%D 2005
%I ACM
%K Haskell STM Synchronization
%P 48--60
%R 10.1145/1065944.1065952
%T Composable Memory Transactions
%U http://doi.acm.org/10.1145/1065944.1065952
%X Writing concurrent programs is notoriously difficult, and is of increasing practical importance. A particular source of concern is that even correctly-implemented concurrency abstractions cannot be composed together to form larger abstractions. In this paper we present a new concurrency model, based on <i>transactional memory</i>, that offers far richer composition. All the usual benefits of transactional memory are present (e.g. freedom from deadlock), but in addition we describe new modular forms of <i>blocking</i> and <i>choice</i> that have been inaccessible in earlier work.
%@ 1-59593-080-9
@inproceedings{Harris:2005,
abstract = {Writing concurrent programs is notoriously difficult, and is of increasing practical importance. A particular source of concern is that even correctly-implemented concurrency abstractions cannot be composed together to form larger abstractions. In this paper we present a new concurrency model, based on <i>transactional memory</i>, that offers far richer composition. All the usual benefits of transactional memory are present (e.g. freedom from deadlock), but in addition we describe new modular forms of <i>blocking</i> and <i>choice</i> that have been inaccessible in earlier work.},
acmid = {1065952},
added-at = {2012-07-26T22:21:50.000+0200},
address = {New York, NY, USA},
author = {Harris, Tim and Marlow, Simon and Peyton-Jones, Simon and Herlihy, Maurice},
biburl = {https://www.bibsonomy.org/bibtex/2c2571aa3a71b058f80ed699011dfa8e2/gron},
booktitle = {Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming},
description = {Composable memory transactions},
doi = {10.1145/1065944.1065952},
interhash = {13849c35f810f4e13d56ca3ea3b688ed},
intrahash = {c2571aa3a71b058f80ed699011dfa8e2},
isbn = {1-59593-080-9},
keywords = {Haskell STM Synchronization},
location = {Chicago, IL, USA},
numpages = {13},
pages = {48--60},
publisher = {ACM},
series = {PPoPP '05},
timestamp = {2012-07-26T22:21:50.000+0200},
title = {Composable Memory Transactions},
url = {http://doi.acm.org/10.1145/1065944.1065952},
year = 2005
}