Difference between Repa and DPH
data-parallel-haskell, haskell, repa
Solution
From the page about DPH on HaskellWiki:
DPH focuses on irregular data parallelism. For regular data parallel code in Haskell, please consider using the companion library Repa, which builds on the parallel array infrastructure of DPH.
Problem
I recently read the paper on upcoming generalized stream fusion in `vector` and `DPH` libraries. It seems to be very interesting development. I am now starting to experiment with `DPH` (starting with GHC 7.6, and plan to upgrade to 7.8 SIMD version when it comes out). I also see from `Repa` library documentation that it can do the parallel array work. `Repa` seems to be the mature version compared to `DPH` which wasn't deemed ready as of GHC 7.4. Now that `DPH` seems to be maturing, I am wondering what are the main pros and cons between `Repa` and `DPH` packages, as of GHC 7.6. I searched StackOverflow and google, but couldn't find comparisons between `Repa` and `DPH`. Hence, this question.