Unfortunately I haven't gotten far enough in Real-World Haskell to have fully understood the parts about Monads but as I've been learning the language, I'd often wondered how common it was to use functional languages for pipeline processes like middleware. Seems like a great fit.