Purity doesn't imply Totality
- Purity means functions are deterministic and have no side effects
- Totality means functions terminate and produce a value
Pure languages like Haskell can still throw exceptions because they are not total.
Pure languages like Haskell can still throw exceptions because they are not total.