Why functional programming matters

From the link:

Question: What is the deal with functional programming?

Answer: Start with Why Functional Programming Matters. Then move to Why Why Function Programming Matters Matters. A few bullets:

  • Functional programming allows you to reason about problems differently
  • Functional abstraction is very powerful and allows you to DRY up your code in ways not available to other paradigms
  • In our multi-core future, functional languages may be easier to split into simultaneous tasks (though not-strictly-functional languages are working hard on the problem as well).
  • It's easier to prove that programs written in pure functional languages (no side effects) are mathematically correct.