const validate = <A>(validators: readonly ((thing: A) => Either<string, A>)[]) => (thing: A): Either<string[], A> =>
// what is the implementation?
const validate = <A>(validators: readonly ((thing: A) => Either<string, A>)[]) => (thing: A): Either<string[], A> =>
// what is the implementation?