Jannis
11/21/2019, 5:54 PMflatTap is on Monad, but it works on the success path of Try . There is no handleErrorWith variant that straight up keeps the error and does only effects (like flatTap ). Something like Kind<F, A>.tapError(f: E -> Kind<F, Unit>): Kind<F, A> might make sense.