simon.vergauwen
fun <F> Concurrent<F>.result(): Kind<F, Result> = fx { val result = effect { suspendingFunction() }.bind() (or ! ;P) result } val a: IO<Result> = IO.concurrent().result().fix()