A domain-specific approach to heterogeneous parallelism
Programming Parallel Algorithms