Leandro Borges Ferreira
11/20/2018, 10:32 AMlift
for the Bifunctor class? I noticed that it doesn't have it. It could be just like this:
interface Bifunctor<F> {
fun <A, B, C, D> Kind2<F, A, B>.bimap(fl: (A) -> C, fr: (B) -> D): Kind2<F, C, D>
fun <A, B, C, D> lift(fl: (A) -> C, fr: (B) -> D): (Kind2<F, A, B>) -> Kind2<F, C, D> = { kind2 ->
kind2.bimap(fl, fr)
}
// more code...
If it makes sense, I'll open a PR