можно же делать ApplicativeError[F].raiseError...
Спасибо за идею)
Я пытался сделать for выражение максимально простым
for {
_ <- validate(user)
_ <- someOtherWork()
result <- saveUser(user)
}
И вот так и хочется юзать в return вызываемых функций EitherT, чтобы в итоге получать либо left ошибки и прерывание конвеера for, либо Right результата