The underlying motivation for Reader and CategoryTheory revolves around two facts.
- Pure functions are easier to reason about.
- Supports equational reasoning
- Code only does what it says... no external factors
- Pure functions are easier to test.
I'm happy to provide further justification for these facts, but hopefully these assertions are sensible enough to not need that.