В большинстве учебных пособий Haskell рассказывается об использовании do-notation для IO.
Я также начал с do-notation, но это делает мой код более похожим на императивный язык больше, чем на FP-язык.
На этой неделе я увидел, что учебник использует IO с <$>
stringAnalyzer <$> readFile "testfile.txt"
вместо do
main = do
strFile <- readFile "testfile.txt"
let analysisResult = stringAnalyzer strFile
return analysisResult
И инструмент анализа журнала завершен без do
.
Итак, мой вопрос: " Должны ли мы избегать использования нотации в любом случае?".
Я знаю, возможно, do
сделает код лучше в некоторых случаях.
Кроме того, почему большинство учебных пособий обучают IO с помощью do
?
По-моему <$>
и <*>
делает код более FP, чем IO.