Right, `concats` is just erasing the `FreeT` boundaries. The operations of `pipes-bytestring` don't guarantee anything about the underlying chunks -- except that they don't get bigger (there are a couple of exceptions, like concatMap), so that 'streaming' is maintained.
If you want to make a producer of strict bytestrings, one for each line, you need other combinators. This is a little surprising at first. See Gabriel's discussion here, for example http://stackoverflow.com/questions/25982213/using-haskell-pipes-bytestring-to-iterate-a-file-by-line -- 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.