Category Theory and Declarative Programming
I'm not convinced. Nowhere is the categorical view more visible than in Haskell and yet some of their most advanced libraries are designed for providing OOP constructs, e.g. lenses. Another thing is The dreaded monad. Even though it provides denotational semantics in the categorical setting for various side-effecting constructs the thing is inherently non-compositional.<p>Like all things in programming the truth is a little more subtle than just saying category theory is the right approach for structuring programs. I'm with Felleisen and Sussman when it comes to these things: Types are stupid and most of these things are useless when it comes to reasoning about large and complex dynamic systems.