A Customizable Substrate for Concurrent Languages

Suresh Jagannathan, Jim Philbin

Research output: Contribution to journalArticlepeer-review


We describe an approach to implementing a wide-range of concurrency paradigms in high-level 1992 programming languages. The focus of our discussion is STING, a dialect of Scheme, that supports lightweight threads of control and virtual processors as first-class objects. Given the significant degree to which the behavior of these objects may be customized, we can easily express a variety of concurrency paradigms and linguistic structures within a common framework without loss of efficiency. Unlike parallel systems that rely on operating system services for managing concurrency, STING implements concurrency management entirely in terms of Scheme objects and procedures. It, therefore, permits users to optimize the runtime behavior of their applications without requiring knowledge of the underlying runtime system. This paper concentrates on (a) the implications of the design for building asynchronous concurrency structures, (b) organizing large-scale concurrent computations, and (c) implementing robust programming environments for symbolic computing.

Original languageEnglish (US)
Pages (from-to)55-81
Number of pages27
JournalACM SIGPLAN Notices
Issue number7
StatePublished - Jan 7 1992
Externally publishedYes

ASJC Scopus subject areas

  • Software
  • Computer Graphics and Computer-Aided Design


Dive into the research topics of 'A Customizable Substrate for Concurrent Languages'. Together they form a unique fingerprint.

Cite this