September 2016
Intermediate to advanced
408 pages
9h 18m
English
Repa (regular parallel) is a Haskell library providing regular parallel arrays. Repa performs very well in image processing, for example. Doing computations on large data structures in parallel is Repa's specialty. Repa is installed with:
stack install repa
The parts on Repa in this chapter are written for version 3.4.0.2 of the Repa library. The main interface is exported by the Data.Array.Repa module.
At first glance, the library perhaps looks a bit complex. For instance, the parallel sum function has this daunting type signature:
sumAllP:: (Shape sh, Source r a, Elt a, Unbox a, Num a, Monad m)=> Array r sh a -> m a
Repa uses a lot of classes to overload functionality over different types of array. The type of immutable ...
Read now
Unlock full access