Transactional Tasks: Futures in STM


Details
Janwillem Swalens from the VUB will be presenting his research on Software Transactional Memory.
Clojure supports futures and Software Transactional Memory (STM). With futures you can create threads in a program; transactions allow memory to be shared between these threads. Currently, it is possible to create a transaction in a future. However, creating a future in a transaction leads to several problems: the futures cannot access the transactional memory safely, and they can violate the serializability of the transactions.
We created "transactional tasks", which allow futures to be created in transactions. Thus, the parallelism inside transactions can be exploited, with safe access to the state of the encapsulating transaction.
Location
The meetup will be held in room 10F729, which you can reach by going to the 10th floor of building F. Signs will be put up from the elevator to the room.
Here's a map of the campus at http://www.vub.ac.be/sites/vub/files/campus/plans_VUB_Etterbeek_ENG_2015_nieuwe_layout.pdf

Transactional Tasks: Futures in STM