Skip to content
Discussion options

You must be logged in to vote

To confirm, pipes, like the haskell implementation, is pull based, so if we stopped awaiting and sent a Pure instead (like in this example) it should terminate that pipe. Am I understanding correctly?

Haskell Pipes supports both push and pull models, it really depends on the Producer and the Consumer to what the exact behaviour will be. Language-Ext Pipes used to be an exact clone of Haskell Pipes -- well, almost, the old version could only lift Eff<RT, A> into its transformer stack, but other than that the behaviour was a 1-to-1 match.

The new version of Language-Ext Pipes is fully generalised to use any M constrained to MonadIO but also the whole library has been completely written to…

Replies: 1 comment 5 replies

Comment options

You must be logged in to vote
5 replies
@louthy
Comment options

@cheerio-pixel
Comment options

@cheerio-pixel
Comment options

@louthy
Comment options

Answer selected by cheerio-pixel
@louthy
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
2 participants
Converted from issue

This discussion was converted from issue #1493 on October 15, 2025 20:40.