Abstract

Abstract. We develop a model of concurrent imperative programming with threads. We focus on a small imperative language with cooperative threads which execute without inter-ruption until they terminate or explicitly yield control. We define and study a trace-based denotational semantics for this language; this semantics is fully abstract but mathemat-ically elementary. We also give an equational theory for the computational effects that underlie the language, including thread spawning. We then analyze threads in terms of the free algebra monad for this theory. 1.

Keywords:
Computer science Programming language

Metrics

32
Cited By
6.18
FWCI (Field Weighted Citation Impact)
46
Refs
0.97
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Citation History

Topics

Distributed systems and fault tolerance
Physical Sciences →  Computer Science →  Computer Networks and Communications
Logic, programming, and type systems
Physical Sciences →  Computer Science →  Artificial Intelligence
Optimization and Search Problems
Physical Sciences →  Computer Science →  Computer Networks and Communications

Related Documents

JOURNAL ARTICLE

A model of cooperative threads

Martı́n AbadiGordon Plotkin

Journal:   ACM SIGPLAN Notices Year: 2009 Vol: 44 (1)Pages: 29-40
JOURNAL ARTICLE

A Model of Cooperative Threads

Martín AbadiGordon D. Plotkin

Journal:   Logical Methods in Computer Science Year: 2010 Vol: Volume 6, Issue 4
JOURNAL ARTICLE

Feasible Reactivity for Synchronous Cooperative Threads

Roberto M. AmadioFrédéric Dabrowski

Journal:   Electronic Notes in Theoretical Computer Science Year: 2006 Vol: 154 (3)Pages: 33-43
BOOK-CHAPTER

Resource Control for Synchronous Cooperative Threads

Roberto M. AmadioSilvano Dal Zilio

Lecture notes in computer science Year: 2004 Pages: 68-82
© 2026 ScienceGate Book Chapters — All rights reserved.