Despite the rapid development of parallel computer architectures in recent years, software development technology for parallel processing systems is still largely inadequate. An integrated object-oriented and functional computation model, called PROOF, is developed to facilitate the effective development of software for parallel processing systems. It will fully explore the parallelism in software systems and reduce the development effort by supporting software engineering principles, such as information hiding, modularity, modifiability, and reusability. In PROOF, we achieve the coherent integration of (1) parallelism and inheritance of objects and (2) referential transparency and history sensitivity of functions. The major features and the semantics of PROOF are presented. A parallel programming language and a software development approach based on PROOF are under development. Implementation issues are also discussed.
ASJC Scopus subject areas
- Theoretical Computer Science
- Hardware and Architecture
- Computer Networks and Communications
- Artificial Intelligence