The most precise explanation is to say that when a `Consumer` `await`s, `pipes` does not guarantee that the `await` will ever return (just like it does not guarantee that `yield` will ever return).

The above phrasing is the most robust explanation, since it works even if you use other pipe composition operators, or even if you manually recurse over a `Consumer` by pattern matching over the internal constructors.


That is, the stream terminates as soon as the Producer
+terminates.


Gabriel will correct me if I am wrong but I believe this is is slightly deceiving. The stream terminates whenever the Producer (upstream) or the Consumer (downstream) terminates.

--
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 [email protected] <mailto:[email protected]>. To post to this group, send email to [email protected] <mailto:[email protected]>.

--
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 [email protected].
To post to this group, send email to [email protected].

Reply via email to