The Discourje project: run-time verification of communication protocols in Clojure

被引:0
|
作者
Ruben Hamers
Erik Horlings
Sung-Shik Jongmans
机构
[1] Open University of the Netherlands,Department of Computer Science
[2] Stichting Nederlandse Wetenschappelijk Onderzoek Instituten (NWO-I),Centrum Wiskunde and Informatica (CWI)
关键词
Runtime verification; Multiparty session types; Concurrency;
D O I
暂无
中图分类号
学科分类号
摘要
To simplify shared-memory concurrent programming, languages have started to offer core support for high-level communications primitives, in the form of message passing though channels, in addition to lower-level synchronisation primitives. Yet, a growing body of evidence suggests that channel-based programming abstractions also have their issues. The Discourje project aims to help programmers cope with channels and concurrency bugs in Clojure programs, based on dynamic analysis. The idea is that programmers write not only implementations of communication protocols in their Clojure programs, but also specifications. Discourje then offers a run-time verification library to ensure that channel actions in implementations are safe relative to specifications. The aim of this paper is to provide a comprehensive overview of the current state of Discourje, including case studies, theoretical foundations, and practical aspects.
引用
收藏
页码:757 / 782
页数:25
相关论文
共 50 条
  • [21] Run-time Verification of MSMAS Norms Using Event Calculus
    Elakehal, Emad Eldeen
    Montali, Marco
    Padget, Julian
    2014 IEEE EIGHTH INTERNATIONAL CONFERENCE ON SELF-ADAPTIVE AND SELF-ORGANIZING SYSTEMS WORKSHOPS (SASOW), 2014, : 110 - 115
  • [22] Run-time Verification of Behavioural Conformance for Conversational Web Services
    Dranidis, Dimitris
    Ramollari, Ervin
    Kourtesis, Dimitrios
    ECOWS'09: PROCEEDINGS OF THE 7TH IEEE EUROPEAN CONFERENCE ON WEB SERVICES, 2009, : 139 - +
  • [23] Checking properties of PLL designs using run-time verification
    Dong, Zhi Jie
    Zaki, Mohamed H.
    Al Sammane, Ghiath
    Tahar, Sofiene
    Bois, Guy
    2007 INTERNATIONAL CONFERENCE ON MICROELECTRONICS, 2007, : 329 - +
  • [24] PSL model checking and run-time verification via testers
    Pnueli, A.
    Zaks, A.
    FM 2006: FORMAL METHODS, PROCEEDINGS, 2006, 4085 : 573 - 586
  • [25] AMOEBA-RT: Run-time verification of adaptive software
    Goldsby, Heather J.
    Cheng, Betty H. C.
    Zhang, Ji
    MODELS IN SOFTWARE ENGINEERING, 2008, 5002 : 212 - 224
  • [26] Simulation of Simultaneous Events in Regular Expressions for Run-Time Verification
    Sammapun, Usa
    Easwaran, Arvind
    Lee, Insup
    Sokolsky, Oleg
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 113 : 123 - 143
  • [27] Integrating Software Testing and Run-Time Checking in an Assertion Verification Framework
    Mera, Edison
    Lopez-Garcia, Pedro
    Hermenegildo, Manuel
    LOGIC PROGRAMMING, 2009, 5649 : 281 - +
  • [28] MESSAGE FLOW-ANALYSIS AND RUN-TIME VERIFICATION FOR PARALLEL PROGRAMS
    YANG, SS
    JUANG, JY
    PROCEEDINGS OF THE 1989 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, VOL 2: SOFTWARE, 1989, : 19 - 22
  • [29] Automated Code Synthesis for Run-Time Verification of Distributed Embedded Systems
    Majzik, Istvan
    Horanyi, Gergo
    12TH SYMPOSIUM ON PROGRAMMING LANGUAGES AND SOFTWARE TOOLS, SPLST' 11, 2011, : 161 - 172
  • [30] LAOCOON: A Run-time Monitoring and Verification Approach for Hardware Trojan Detection
    Danger, Jean-Luc
    Fribourg, Laurent
    Naceur, Maha
    Kuhne, Ulrich
    2019 22ND EUROMICRO CONFERENCE ON DIGITAL SYSTEM DESIGN (DSD), 2019, : 269 - 276