Revised5 report on the algorithmic language scheme
ACM SIGPLAN Notices
An architecture for mostly functional languages
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Anatomy of LISP
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Composable memory transactions
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
Common Lisp: The Language
Concurrency oriented programming in termite scheme
Proceedings of the 2006 ACM SIGPLAN workshop on Erlang
Data parallel dialect of scheme: outline of the formal model, implementation, performance
Proceedings of the 2009 ACM symposium on Applied Computing
Polymorphic contention management
DISC'05 Proceedings of the 19th international conference on Distributed Computing
Hi-index | 0.00 |
During the last decade, software transactional memory (STM) gained wide popularity in many areas of parallel computing. In this paper, we introduce LISP-derived language equipped with automatic parallel execution and mutations based on software transactional memory. The novel idea is that we do not incorporate transactions as a language construct but rather use them as a mean of runtime environment to run each computation in a consistent memory and thus provide correct results. STM enables us to efficiently manage concurrent object updates and resolve collisions. In this paper, we describe a variant of deferred lockless STM mechanism with direct updates that enables us to use mutations with minimal costs.