Title
Abstracting Process-to-Function Relations in Concurrent Object-Oriented
Applications
Overview
My project for this course is about how to separate the concurrency issues
from other behaviors. By doing so OOCP applications can reduce the conflict
between OO and concurrency. I choose the paper entitled Abstracting
Process-to-Function Relations in Concurrent Object-Oriented Applications
by Lopes and Lieberherr as my study paper. First, this paper gives some
brief overview about OOP and concurrency. Then from the Process-to-Function's
point of view, it presents an idea of modeling concurrent object-oriented
applications into three blocks: structural blocks, behavioral blocks and
concurrency blocks. At last, it describes a simple example of mapping the
patterns into some particular OOP, namely C++ in this paper.
Papers
C.V Lopes and K.J. Lieberherr.
Abstracting Process-to-Function Relations in Concurrent Object-Oriented
Applications.
In Proceedings of the European Conference on Object-Oriented
Programming, volume 821 of Lecture Notes in Computer Science,
Bologna, June 1994. Springer-Verlag.
Additional reading material
-
Rajn Pandey.
Support for Extensibility and Reusability in a Concurrent Object-Oriented
Programming Language.
-
Norman Wilde, Paul Matthews and Ross Huitt.
Maintaining object-oriented software.
-
Karl Lieberherr.
The Art of Growing Adaptive Object-Oriented Software.
-
Jean-Loop Baer.
On Synchronization Patterns in Parallel Programs.
-
S.Matsuoka and A.Yonezawa.
Analysis of inheritance anomaly in object-oriented concurrent programming
languages.
-
A.Yonezawa, E.Shibayama, T.Takada and Y.Honda.
Modeling and programming in an object-oriented concurrent language ABCL/1.
-
Klaus-Peter Lohr.
Concurrency annotations for reusable software.
-
Bertrand Meyer.
Systematic concurrent object-oriented programming.
-
Denis Caromel.
Toward a method of object-oriented concurrent programming.
-
Peter America.
POOL-T: A parallel object-oriented language.
-
Ole Lehrmann Madesen.
Building Abstractions for Concurrent Object-Oriented programming
-
L. Bergmans, M. Aksit, Ken Wakita and A. Yonezawa.
An object-oriented model for extensible concurrent systems: the
composition-filters approach.
Implementation details
As for the implementation part of this project, I plan to develop a code
generator. Basing on the idea of this paper, the final pattern, especially
the concurrency blocks, should be able to be converted into some kind
of OOP code. So first of all, I am going to define some code generation
algorithm for the operation referenced in a synchronization pattern. Then my
little product will take the whole model of the concurrent application as
input and change it into the Java code as the output.