An Extensible Interpreter Framework for Software Transactional Memory
Charlotte Herzeel (Vrije Universiteit Brussel, Belgium)
Pascal Costanza (Vrije Universiteit Brussel, Belgium)
Theo D'Hondt (Vrije Universiteit Brussel, Belgium)
Abstract: Software transactional memory (STM) is a new approach for coordinating concurrent threads, for which many different implementation strategies are currently being researched. In this paper we show that if a language implementation provides reflective access to explicit memory locations, it becomes straightforward to both (a) build an STM framework for this language and (b) to implement STM algorithms using this framework. A proof-of-concept implementation in the form of a Scheme interpreter (written in Common Lisp) is presented.
Keywords: Lisp, memory location objects, software transactional memory
Categories: D.1.3, D.3.3