Context-oriented Software Transactional Memory in Common Lisp

被引:0
|
作者
Costanza, Pascal [1 ]
Herzeel, Charlotte [1 ]
D'Hondt, Theo [1 ]
机构
[1] Vrije Univ Brussel, Software Languages Lab, B-1050 Brussels, Belgium
基金
比利时弗兰德研究基金会;
关键词
Design; Languages; Software transactional memory; framework design; context-oriented programming;
D O I
10.1145/1837513.1640144
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software transactional memory (STM) is a promising approach for coordinating concurrent threads, for which many implementation strategies are currently being researched. Although some first steps exist to ease experimenting with different strategies, this still remains a relatively complex and cumbersome task. The reason is that software transactions require STM-specific dynamic crosscutting adaptations, but this is not accounted for in current STM implementations. This paper presents CSTM, an STM framework based on Context-oriented Prorgamming, in which transactions are modelled as dynamically scoped layer activations. It enables expressing transactional variable accesses as user-defined crosscutting concerns, without requiring invasive changes in the rest of a program. This paper presents a proof-of-concept implementation based on ContextL for Common Lisp, along with example STM strategies and preliminary benchmarks, and introduces some of ContextL's unique features for context-dependent variable accesses.
引用
收藏
页码:59 / 68
页数:10
相关论文
共 50 条
  • [31] Semantics for consistent activation in context-oriented systems
    Cardozo, Nicolas
    Gonzalez, Sebastian
    Mens, Kim
    Van Der Straeten, Ragnhild
    Vallejos, Jorge
    D'Hondt, Theo
    INFORMATION AND SOFTWARE TECHNOLOGY, 2015, 58 : 71 - 94
  • [32] RTCOP: Context-Oriented Programming Framework based on C plus plus for Application in Embedded Software
    Tanigawa, Ikuta
    Hisazumi, Kenji
    Ogura, Nobuhiko
    Sugaya, Midori
    Watanabe, Harumi
    Fukuda, Akira
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON INFORMATION SCIENCE AND SYSTEMS (ICISS 2019), 2019, : 65 - 72
  • [33] Preemptive Software Transactional Memory
    Silvestri, Emiliano
    Economo, Simone
    Di Sanzo, Pierangelo
    Pellegrini, Alessandro
    Quaglia, Francesco
    2017 17TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID), 2017, : 294 - 303
  • [34] Extensible Software Transactional Memory
    Noel, Cyprien
    PROCEEDINGS OF THE THIRD C* CONFERENCE ON COMPUTER SCIENCE AND SOFTWARE ENGINEERING 2010 (C3S2E '10), 2010, : 23 - 34
  • [35] Snapshots and software transactional memory
    Cole, C
    Herlihy, M
    SCIENCE OF COMPUTER PROGRAMMING, 2005, 58 (03) : 310 - 324
  • [36] Adaptive software transactional memory
    Marathe, VJ
    Scherer, WN
    Scott, ML
    DISTRIBUTED COMPUTING, PROCEEDINGS, 2005, 3724 : 354 - 368
  • [37] Dynamic Visualisation of Features and Contexts for Context-Oriented Programmers
    Duhoux, Benoit
    Dumas, Bruno
    Leung, Hoo Sing
    Mens, Kim
    PROCEEDINGS OF THE ACM SIGCHI SYMPOSIUM ON ENGINEERING INTERACTIVE COMPUTING SYSTEMS (EICS'19), 2019,
  • [38] Towards Context-oriented Project Management for Virtual Organizations
    Hsu, Chouyin
    Lee, Minfeng
    JCPC: 2009 JOINT CONFERENCE ON PERVASIVE COMPUTING, 2009, : 761 - 764
  • [39] Reconciling Context-Oriented Programming and User Interface Adaptation
    Duhoux, Benoit
    PROCEEDINGS OF THE ACM SIGCHI SYMPOSIUM ON ENGINEERING INTERACTIVE COMPUTING SYSTEMS (EICS'18), 2018,
  • [40] Detecting the Onset of Dementia using Context-Oriented Architecture
    Magableh, Basel
    AlBeiruti, Nidal
    2012 6TH INTERNATIONAL CONFERENCE ON NEXT GENERATION MOBILE APPLICATIONS, SERVICES AND TECHNOLOGIES (NGMAST), 2012, : 24 - 30