Distributed aggregation for data-parallel computing: interfaces and implementations
Algorithmic Skeletons: Structured Management of Parallel Computation