Modular Code and Lazy Evaluation in Haskell
hackhands.com
hackhands.com
Its not a perfect approach, but its a default approach that avoids a lot of style gotchas from being too strict or too lazy globally. I also spend way too much time thinking about how to make the perfect mutable multi dim array libraries for haskell, so I also tend to have a funny perspective :)