Supporting Software Reuse in Concurrent Object-Oriented Languages: Exploring the Language Design Space 1
Michael Papathomas, Oscar Nierstrasz · Archive ouverte UNIGE (University of Geneva) · 1991
The design of programming languages that cleanly integrate concurrency constructs and objectoriented features that promote software reuse is an open problem. We describe a design space that characterizes approaches to object-oriented concurrency in terms of a number of language design choices concerning the relationship between objects and concurrency. We identify requirements for software reuse and, with the help of an example that illustrates several of these requirements, explore the design space in order to evaluate which design choices interfere with reuse and which appear to adequately support it. We conclude by highlighting open research issues which, we believe, are essential for achieving effective reuse of concurrent software. 1. Introduction The potential for interference between concurrency constructs and object-oriented mechanisms supporting reuse has been noted recently by a number of independent researchers [8], [17], [29], [32]. Whereas one might (naively) expect issue...