Font Size: a A A

The design and implementation of an object-oriented parallel programming language

Posted on:1992-07-11Degree:Ph.DType:Dissertation
University:Oklahoma State UniversityCandidate:Jo, Chang-HyunFull Text:PDF
GTID:1478390014499746Subject:Computer Science
Abstract/Summary:
Scope of study. Programming languages are the primary tools for software development. New programming languages are necessary to take advantage of the features provided by the parallel processing machines. This dissertation is concerned with the development of a programming language to support parallel and distributed computing. New concepts to support dynamic object behavior as well as existing concepts considered to be beneficial for program development are incorporated into this new language, Parallel-C++. Implementation schemes for the new language constructs are also developed.; Findings and conclusions. Parallel-C++ is an object-oriented parallel programming language which allows object-oriented programming in parallel and distributed computing environments. Parallel-C++ incorporates new language concepts such as static/dynamic objects, ownership and dynamic interface environment binding. A static object can be a master object that owns some dynamic objects which may float from one object to another in the system. The newly introduced language concepts and the associated language constructs support the computation of an expression in different environments. Object mobility can be obtained as a consequence of the change in ownership relation between objects which defines a new dynamic relation among objects, while conserving the static class hierarchy. When dynamic objects are exported and imported among static objects, the external environments of the dynamic objects will change. The internal environment of the dynamic object moves with it, but the external environment does not. The internal environment of an exported object is bound to the external environment provided by the importing object. An object behaves differently according to the environment in which it resides. This concept can support programming of practical real-world problems in a natural way. Dynamic objects provide new control flow of programs. Dynamic objects also add enhancement to the scope rules. Parallel language constructs suggested in Parallel-C++ help programmers write simple and readable parallel programs. A translator for Parallel-C++ has been implemented in the iPSC/2 environment. This implementation of distributed and dynamic objects based on a distributed memory computing system is another characteristic of this work, while most other work has been done using models based on shared memory systems.
Keywords/Search Tags:Language, Programming, Object, Parallel, New, Implementation
Related items