Я пытаюсь понять, как использовать библиотеку итераций с Haskell. Все статьи, которые я видел до сих пор, похоже, сосредоточены на создании интуиции относительно того, как можно построить итераторы, что полезно, но теперь, когда я хочу разобраться и фактически использовать их, я чувствую себя немного в море. Просмотр исходного кода для итераций имел для меня ограниченное значение.
Допустим, у меня есть эта функция, которая удаляет конечные пробелы в строке:
import Data.ByteString.Char8
rstrip :: ByteString -> ByteString
rstrip = fst . spanEnd isSpace
Я бы хотел сделать следующее: превратить это в итерацию, прочитать файл и записать его где-нибудь в другом месте с удалением конечных пробелов из каждой строки. Как я могу структурировать это с помощью итераций? Я вижу, что в Data.Iteratee.Char есть функция enumLinesBS
, которую я мог бы изучить, но я не знаю, следует ли мне использовать mapChunks
или convStream
или как переупаковать указанную выше функцию в итерацию.