Debuggable concurrency extensions for standard ML

Andrew P. Tolmach, Andrew Wilson Appel

Research output: Contribution to journalArticlepeer-review

10 Scopus citations

Abstract

We are developing an interactive debugger with reverse execution for the language Standard ML extended to include concurrent threads in the style of Modula-2+. Our debugging approach is based on automatic instrumentation in the source language of the user's source code; this makes the debugger completely independent of the compiler back-end, run-time system, and target hardware. The debugger operates entirely inside the concurrency model and has no special concurrency privileges. In this paper, we consider some of the challenges of debugging a non-deterministic concurrent symbolic language “in itself.” Issues considered include logging nondeterministic activity, obtaining more secure semantics for our concurrency primitives, controlling distributed computations, and defining suit able time models. We conclude by suggesting an alternative simulation-based approach to dealing with non-determinism.

Original languageEnglish (US)
Pages (from-to)120-131
Number of pages12
JournalACM SIGPLAN Notices
Volume26
Issue number12
DOIs
StatePublished - Jan 12 1991

All Science Journal Classification (ASJC) codes

  • Software
  • Computer Graphics and Computer-Aided Design

Fingerprint Dive into the research topics of 'Debuggable concurrency extensions for standard ML'. Together they form a unique fingerprint.

Cite this