Hello, Group! I implemented a scheme (strN - stream N, a, b - items of stream):
a -> b -> (a, b) a -> b -> (a, b) a -> b -> (a, b) . . ... str1 str2 str3 i.e. from each item of *str1* I get item of *str2* (with network call) and then combine item from *str1* and item from *str2* to a pair - to analize combined item (because I need info from both items: *a* and *b*). In pseudocode: for a in str1Getter: b = getStr2 a analize(a, b) I done combining with *S.zip* from Streaming.Prelude. I suppose it's similar to Pipes and Conduits. And this looks like: (|>) = flip $ str1Getter |> S.mapM (liftIO . getStr2 connection) |> S.zip str1Getter and sure here I got *twice execution* of str2 retrieving from network (each request happens twice), due this zip. Would somebody help me: how to make this scheme (in simple way)? I can pass *a* to getStr2 sure and to get from it not simple *b* but *(a, b)* but this looks not cool. Is some other way to do it? /Best regards, Paul -- You received this message because you are subscribed to the Google Groups "Haskell Pipes" group. To unsubscribe from this group and stop receiving emails from it, send an email to haskell-pipes+unsubscr...@googlegroups.com. To post to this group, send email to haskell-pipes@googlegroups.com.