Discourje: Run-Time Verification of Communication Protocols in Clojure -- Live at Last (Technical Report)
Sung-Shik Jongmans

TL;DR
This paper extends the Discourje library for Clojure to enable run-time detection of both safety and liveness violations in communication protocols, enhancing the verification of concurrent programs.
Contribution
It introduces an extension to Discourje that allows detection of liveness violations, improving protocol verification in Clojure programs.
Findings
Extended Discourje detects liveness violations.
Improved safety and liveness verification in Clojure.
Enhanced reliability of concurrent communication protocols.
Abstract
Multiparty session typing (MPST) is a formal method to make concurrent programming simpler. The idea is to use type checking to automatically prove safety (protocol compliance) and liveness (communication deadlock freedom) of implementations relative to specifications. Discourje is an existing run-time verification library for communication protocols in Clojure, based on dynamic MPST. The original version of Discourje can detect only safety violations. In this paper, we present an extension of Discourje to detect also liveness violations.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsRobotics and Automated Systems
