“Parallel and Concurrent Programming in Haskell” is available online on O’Reilly Media’s Open Feedback Publishing System.
The main goal of the book is to get you programming competently with Parallel and Concurrent Haskell. However, as you probably know by now, learning about programming is not something you can do by reading a book alone. This is why the book is deliberately practical: there are lots of examples that you can run, play about with, and extend. Some of the chapters have suggestions for exercises that you can try out to get familiar with the topics covered in that chapter, and I strongly recommend that you either try a few of these, or code up some of your own ideas.
Table of Contents
- Basic parallelism: the Eval monad
- Evaluation Strategies
- Basic concurrency: threads and MVars
- Overlapping input/output
- Cancellation and timeouts
- Software Transactional Memory
- Higher-level concurrency abstractions
- High-speed concurrent server applications
- Parallel programming using threads
Publisher: O’Reilly Media
Link: Read online.