The title says it all. I've seen that some people apparently use Data.Conduit.List.map id
as identity conduit, but is this the recommended way to stream data unchanged?
The simplest way to write an identity conduit is probably:
awaitForever yield
because this doesn't require an extra import.
The definition of Data.Conduit.List.map
is very similar:
mapC f = awaitForever $ yield . f
(The difference between mapC
and map
has something to do with CPP macros to define fusion.)
When optimization is on (-O1
), it appears both options result in identical code, so it's just a matter of taste.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With