MPL
MPL implements both inter-object parallelism (one process per object) and intra-object parallelism (more processes per object).
The compiler generates code to build and execute data dependency graphs. Thus parallelism in MPL is largely transparent to the programmer.
Parallelism implemented on objects of the mentat class.
In this approach, the programmer makes granularity and partitioning decisions using mentat class definition constructs, and the compiler and the run-time support manage communication and synchronization.