Functional Programming

tags
Software Development

Programming paradigm emphasizing pure (side-effect free) functions and immutable data. Often, but not always, associated with highly expressive type systems.

Most important advantage is extremely strong composability (IMO).

If Haskell is so great, why hasn't it taken over the world?

Paul Chiusano
Composability advantages don't survive across application boundaries, which there are a lot of in practice. cf Narrow Waist - there isn't a common data format that can preserve the strong invariants of functional programs.