Parallel-C++ for the Java virtual machine

Object-oriented modeling and design is a way of solving problems using models based upon real-world concepts. In this paradigm, the fundamental construct is the object, an entity that encompasses both data structure and behavior. Parallel computing strives to increase computational power through task subdivision and concurrent execution. The combination of these two areas has led to active research in concurrent object-oriented programming languages. The Parallel-C++ language was designed to support concurrent object-oriented programming in parallel and distributed computing environments. The language provides support for fine-grained parallelism, concurrent process execution, inter-process communication, and object migration. A prototype Parallel-C++ to Java Byte Code compiler is implemented to provide program execution on any architecture that supports the Java Virtual Machine. This mechanism could serve as the basis for an environment that facilitates the implementation of distributed applications and object migration across heterogeneous systems.