4
ZPL ...
•Is an array language -- whole arrays are manipulated with primitive operations
•Requires new thinking strategies --
•Forget one-operation-a-time scalar programming
•Think of the computation globally -- make the global logic work efficiently and leave the details to the compiler
•Is parallel, but there are no parallel constructs in the language; the compiler...
•Finds all concurrency
•Performs all interprocessor communication
•Implements all necessary synchronization (almost none)
•Performs extensive parallel and scalar optimizations