usando haskell pipes-bytestring para iterar un archivo por línea

Estoy usando la biblioteca de tuberías y necesito convertir una secuencia ByteString en una secuencia de líneas (es decir,String), utilizando la codificación ASCII. Soy consciente de que hay otras bibliotecas (Pipes.Text y Pipes.Prelude) que tal vez me permitan obtener líneas de un archivo de texto más fácilmente, pero debido a algún otro código, necesito poder obtener líneas comoString de un productor deByteString.

Más formalmente, necesito convertir unProducer ByteString IO () a unProducer String IO (), que produce líneas.

Estoy seguro de que esto debe ser una frase para un programador de tuberías experimentado, pero hasta ahora no logré hackear con éxito todos losFreeT yLens-trickery en Pipes-ByteString.

¡Cualquier ayuda es muy apreciada!

Stephan