Haskellers use all the language features we’ve discussed so far to develop very nice libraries. In this part, we’ll look at those libraries and apply them to solve real-world software developer problems. We’ll process data files in streaming pipelines going from raw bytes to final results by efficient reading, parsing, and calculating. We’ll access data in data structures and databases. We’ll also learn essential topics in concurrency. This part could be 10 times longer because software problems are countless, but I believe that all the readers at this point are ready to learn the tools they need all by themselves. Good luck!