exercises from the book Parallel and Concurrent Programming in Haskell