Issue No. 02 - February (1988 vol. 14)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.4643
<p>Recent programming languages have attempted to provide support for concurrency and for modular programming based on abstract interfaces. Building on experience of adding monitors to CLU, a language oriented towards data abstraction, it is explained how these two goals conflict. In particular, the clash between conventional views on interface abstraction and the programming style required for avoiding monitor deadlock is discussed. It is argued 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.</p>
concurrent programming; programming languages; modular programming; abstractinterfaces; CLU; data abstraction; interface abstraction; monitor deadlock; fine-grain locking; data structures; high level languages; parallel programming; system recovery
K. Hamilton and R. Cooper, "Preserving Abstraction in Concurrent Programming," in IEEE Transactions on Software Engineering, vol. 14, no. , pp. 258-263, 1988.