Why the next language you learn should be functional (2011)
queue.acm.org