The Validation(a, b) is a disjunction that's more appropriate for validating
inputs, or any use case where you want to aggregate failures. Not only the
Validation monad provides a better terminology for working with such cases
(Failure and Success versus Left and Right), it also allows one to
easily aggregate failures and successes as an Applicative Functor.