%0 Conference Proceedings %T Subobject Transactional Memory %+ FUTURE HEALTH DEPARTMENT [KU Leuven] (KU-IBBT) %+ Distributed Systems and Computer Networks (DistriNet) %A Dooren, Marko, Van %A Clarke, Dave %< avec comité de lecture %( Lecture Notes in Computer Science %B 14th International Conference on Coordination Models and Languages (COORDINATION) %C Stockholm, Sweden %Y Marjan Sirjani %I Springer %3 Coordination Models and Languages %V LNCS-7274 %P 44-58 %8 2012-06-14 %D 2012 %R 10.1007/978-3-642-30829-1_4 %Z Computer Science [cs] %Z Computer Science [cs]/Networking and Internet Architecture [cs.NI]Conference papers %X Concurrent object-oriented programs are hard to write because of the frequent use of state in objects. In a concurrent program, this state must be protected against race-conditions and deadlocks, which costs a lot of effort and is error-prone. Software transactional memory is a mechanism for concurrency control that is similar to mechanisms used in databases. The programmer does not deal with low-level locks, but instead uses transaction demarcation to protect shared memory.We show that in a statically typed subobject-oriented programming language, a transactional program requires less effort than writing a regular object-oriented programming. In addition, we show how transactionality can be added to existing classes without performing code transformations or using a meta-object protocol. %G English %Z TC 6 %2 https://inria.hal.science/hal-01529600/document %2 https://inria.hal.science/hal-01529600/file/978-3-642-30829-1_4_Chapter.pdf %L hal-01529600 %U https://inria.hal.science/hal-01529600 %~ IFIP-LNCS %~ IFIP %~ IFIP-TC %~ IFIP-TC6 %~ IFIP-COORDINATION %~ IFIP-LNCS-7274