You can capture `suspend () -> Either<E, A&g...
# arrow
s
You can capture
suspend () -> Either<E, A>
into
IO<E, A>
to conveniently access all the operators. In that way you could simply consider
IO
a DSL to enable
suspend
concurrent/async operators. You could compare it to monad-control in Haskell.