Author :
Wyatt, Barbara B. ; Kavi, Krishna ; Hufnagel, Steve
Author_Institution :
Comput. Sci. & Eng., Texas Univ., Arlington, TX, USA
Abstract :
Fourteen concurrent object-oriented languages are compared in terms of how they deal with communication, synchronization, process management, inheritance, and implementation trade-offs. The ways in which they divide responsibility between the programmer, the compiler, and the operating system are also investigated. It is found that current object-oriented languages that have concurrency features are often compromised in important areas, including inheritance capability, efficiency, ease of use, and degree of parallel activity. Frequently, this is because the concurrency features were added after the language was designed. The languages discussed are Actors, Abd/1, Abd/R, Argus, COOL, Concurrent Smalltalk, Eiffel, Emerald, ES-Kit C++, Hybrid, Nexus, Parmacs, POOL-T, and Presto.<>
Keywords :
object-oriented languages; parallel languages; parallel programming; Abd/1; Abd/R; Actors; Argus; COOL; Concurrent Smalltalk; ES-Kit C++; Eiffel; Emerald; Hybrid; Nexus; POOL-T; Parmacs; Presto; communication; compiler; concurrent object-oriented languages; implementation trade-offs; inheritance; operating system; parallelism; process management; programmer; synchronization; Buildings; Concurrent computing; Memory management; Operating systems; Program processors; Programming profession; Security;