Effective Haskell: Solving Problems with Strongly Typed Functional Programmingpragprog.com8 pointsmooreds4 years ago