pakoito
04/24/2020, 3:46 PMhandleErrorWith ?melatonina
04/24/2020, 3:47 PMpakoito
04/24/2020, 3:48 PMswap().flatMap(block)melatonina
04/24/2020, 3:49 PMpakoito
04/24/2020, 3:52 PMmelatonina
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:52 PMpakoito
04/24/2020, 3:53 PMflatMapLeft is a good name for this. I'm trying to remember why we didn't allow to change the error type on flatMappakoito
04/24/2020, 3:53 PMpakoito
04/24/2020, 3:53 PMmelatonina
04/24/2020, 3:55 PMmelatonina
04/24/2020, 3:58 PMprocessFlow is a builder of ProcessFlow which is something like a kotlin Flow emitting progress events, followed by a terminal event containing a result. The ``as`` infix operator embeds a ProcessFlow in the current ProcessFlow. ProcessFlow is actually a wrapper around a regular Flow, and that's where the need for using suspend functions comes from.melatonina
04/24/2020, 3:58 PMpakoito
04/24/2020, 3:59 PMpakoito
04/24/2020, 3:59 PMflatMapLeft could happen outsidepakoito
04/24/2020, 3:59 PMpakoito
04/24/2020, 4:00 PMdoNotCompute? StoredEvaluationProblem.ComputationSkippedAsRequested.left() : computeFlow()pakoito
04/24/2020, 4:00 PMpakoito
04/24/2020, 4:00 PMmelatonina
04/24/2020, 4:30 PMmelatonina
04/24/2020, 4:40 PMProcessFlow , I'll check arrow-meta and see if I can remove some boilerplate code (not visible here) and simplify the syntax even further.
Anyway, thanks again!