Title :
Expressing concurrency in Griffin
Author :
Afshartous, Niki ; Harrison, Malcolm C.
Author_Institution :
Courant Inst. of Math. Sci., New York Univ., NY, USA
Abstract :
Griffin is a statically typed language designed specifically for the rapid prototyping of Ada software. In this paper we describe the Griffin language constructs for expressing concurrency. There are two salient innovations: (1) an extended select statement that provides greater flexibility in managing non-deterministic behavior and (2) the capability of a receiving thread to concurrently rendezvous with multiple sending threads. Thus by increasing concurrency, we alleviate the chief drawback to synchronous communication. We then apply the Griffin constructs in implementing solutions to the readers-writers problem, group lock mechanism, and scheduling groups of concurrent operations. The Griffin constructs facilitate the expression of high-level algorithms that maximize concurrency
Keywords :
Ada; parallel programming; program debugging; software prototyping; synchronisation; Ada software; Griffin; Griffin language constructs; extended select statement; group lock mechanism; high-level algorithms; rapid prototyping; readers-writers problem; receiving thread; scheduling groups; statically typed language; synchronous communication; Concurrent computing; Contracts; Data structures; Debugging; Error correction; Information systems; Programming profession; Software prototyping; Writing; Yarn;
Conference_Titel :
Parallel and Distributed Systems, 1996. Proceedings., 1996 International Conference on
Conference_Location :
Tokyo
Print_ISBN :
0-8186-7267-6
DOI :
10.1109/ICPADS.1996.517575