Department of Computer Science and Technology

Technical reports

Preserving abstraction in concurrent programming

R.C.B. Cooper, K.G. Hamilton

August 1985, 16 pages

DOI: 10.48456/tr-76

Abstract

Recent programming languages have attempted to provide support for concurrency and for modular programming based on abstract interfaces. Building on our experience of adding monitors to CLU, a language orientated towards data abstraction, we explain how these two goals conflict. In particular we discuss the clash between conventional views on interface abstraction and the programming style required for avoiding monitor deadlock. We argue that the best compromise between these goals is a combination of a fine grain locking mechanism together with a method for explicitly defining concurrency properties for selected interfaces.

Full text

PDF (0.8 MB)

BibTeX record

@TechReport{UCAM-CL-TR-76,
  author =	 {Cooper, R.C.B. and Hamilton, K.G.},
  title = 	 {{Preserving abstraction in concurrent programming}},
  year = 	 1985,
  month = 	 aug,
  url = 	 {https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-76.pdf},
  institution =  {University of Cambridge, Computer Laboratory},
  doi = 	 {10.48456/tr-76},
  number = 	 {UCAM-CL-TR-76}
}