ClojureTxTk is a fork of Clojure, in which its Software Transactional Memory is extended with support for Transactional Tasks. A "transactional task" is a thread that was created in a software transaction. Hence, ClojureTxTk allows you to create threads inside transactions, that allow you to modify the transactional state, while these changes are part of the encompassing transaction.
Two programs written using ClojureTxTk are available on GitHub and in here:
ClojureTxTk is available on GitHub. You can also find more information on this page.
Janwillem Swalens, Joeri De Koster, & Wolfgang De Meuter. 2016. Transactional Tasks: Parallelism in Software Transactions. In Proceedings of the 30th European Conference on Object-Oriented Programming (ECOOP 2016).