I think there is
map
on Validated applicative that seems to look like what you want.
Like this
import arrow.core.Nel
import arrow.core.Validated
import arrow.core.extensions.nonemptylist.semigroup.semigroup
import arrow.core.extensions.validated.applicative.applicative
sealed class ValidationError
fun someValidation(): Validated<Nel<ValidationError>, String> = TODO()
fun main() {
Validated.applicative(Nel.semigroup<ValidationError>())
.map(
someValidation(),
someValidation(),
someValidation(),
someValidation(),
someValidation(),
someValidation(),
someValidation()
) { (a, b, c, d, e, f, g) -> listOf(a, b, c, d, e, f, g) }
}
Or I am missing something 😄
Just it exists for 1 to 10 args from what I know