A Concurrency-Agnostic Protocol for Multi-Paradigm Concurrent Debugging Tools

Stefan Marr, Carmen Torres Lopez, Elisa Gonzalez Boix, Dominik Aumayr, Hanspeter Mossenbock

Research output: Chapter in Book/Report/Conference proceedingConference paper

10 Citations (Scopus)


Today’s complex software systems combine high-level concurrency
models. Each model is used to solve a specific set
of problems. Unfortunately, debuggers support only the lowlevel
notions of threads and shared memory, forcing developers
to reason about these notions instead of the high-level
concurrency models they chose.
This paper proposes a concurrency-agnostic debugger
protocol that decouples the debugger from the concurrency
models employed by the target application. As a result, the
underlying language runtime can define custom breakpoints,
stepping operations, and execution events for each concurrency
model it supports, and a debugger can expose them
without having to be specifically adapted.
We evaluated the generality of the protocol by applying it
to SOMns, a Newspeak implementation, which supports a
diversity of concurrency models including communicating
sequential processes, communicating event loops, threads
and locks, fork/join parallelism, and software transactional
memory. We implemented 21 breakpoints and 20 stepping
operations for these concurrency models. For none of these,
the debugger needed to be changed. Furthermore, we visualize
all concurrent interactions independently of a specific
concurrency model. To show that tooling for a specific concurrency
model is possible, we visualize actor turns and
message sends separately.
Original languageEnglish
Title of host publication13th ACM SIGPLAN International Symposium on Dynamic Languages (DLS 2017)
EditorsDavide Ancona
Number of pages12
ISBN (Electronic)978-1-4503-5526-1
Publication statusPublished - 24 Oct 2017
Event13th Dynamic Languages Symposium (DLS) at SPLASH 2017 - Vancouver, Canada
Duration: 24 Oct 2017 → …


Conference13th Dynamic Languages Symposium (DLS) at SPLASH 2017
Abbreviated titleDLS 2017
Period24/10/17 → …
Internet address


  • Breakpoints
  • Concurrency
  • Debugging
  • Stepping
  • Tooling
  • Visualization


Dive into the research topics of 'A Concurrency-Agnostic Protocol for Multi-Paradigm Concurrent Debugging Tools'. Together they form a unique fingerprint.

Cite this