Issue No. 08 - August (1989 vol. 15)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.31354
<p>A description is given of language constructs for specifying concurrency in CDL*. The main goals in designing the language have been: modular specification, data integrity, and expressiveness. The language constructs are presented, and it is shown through examples how the constructs mirror the goals. The major advantages of the constructs are as follows: (1) data integrity is achieved without resorting to mutual exclusion unnecessarily, (2) dynamic resource management is achieved safely guaranteeing the anonymity of the dynamically allocating resources, and (3) similar components can be packaged together without resorting to sequential access. Various features of the language are illustrated through examples. In short, the language provides a step towards integrating abstraction mechanisms and specification techniques. Some of the features in CDL* are compared to some of the features available in other languages, including distributed programming languages.</p>
CDL* concurrency specification; language constructs; modular specification; data integrity; expressiveness; mutual exclusion; dynamic resource management; anonymity; dynamically allocating resources; abstraction mechanisms; specification techniques; CDL*; distributed programming languages; data integrity; parallel programming; specification languages
J. Thatcher and R. Shyamasundar, "Language Constructs for Specifying Concurrency in CDL," in IEEE Transactions on Software Engineering, vol. 15, no. , pp. 977-993, 1989.