/** * @tsplus static DSL flatMapF_ */ export function flatMapF_(F: Monad) { return ( fa: HKT.Kind, f: (a: A) => HKT.Kind ): HKT.Kind => F.flatten(F.map(f)(fa)) } /** * @tsplus static DSL flatMapF */ export function flatMapF(F: Monad) { return ( f: (a: A) => HKT.Kind ) => (fa: HKT.Kind): HKT.Kind => flatMapF_(F)(fa, f) }