Integrating concurrent and object-oriented programming as been an active research topic since the late 1980s. There is now a plethora of methods for achieving this integration. The majority of approaches have taken a sequential object-oriented language and made it concurrent. A few approaches have taken a concurrent language and made it object-oriented. The most important of this latter case is the Ada 95 language which is an extension to the object-based concurrent programming language Ada 83. Arguably, Ada 95 does not fully integrate its models of concurrency and object-oriented programming. For example. neither tasks nor protected objects are extensible. This paper discusses ways in which protected objects can be made more extensible.
Michael Lehning, Wolf Hendrik Huwald, Francesco Comola, Mathias Thierry Pierre Bavay, Tristan Jonas Brauchli, Aurélien Gallice