16 Oct 2018
Zipping streams
Writing the following is easy after glancing through the documentation for conduit:
foo = let src = mapM_ C.yield [0..9 :: Int] p0 = CC.map (\ i -> ("p0", succ i)) p1 = CC.filter odd .| CC.map (\ i -> ("p1", i)) p = C.getZipConduit $ C.ZipConduit p0 <* C.ZipConduit p1 sink = CC.mapM_ print in C.runConduit $ src .| p .| sink
Neither pipes nor streaming make it as easy to figure out. I must be missing something! What functions should I be looking at?