Я хочу, чтобы эта функция печатала данный IO String
day :: IO String -> IO ()
day p2 = do
putStr "p2: "
putStrLn p2
Но компилятор говорит, что ему нужно [Char]
, но, насколько я знаю, он в основном такой же, как String
, поэтому мойвопрос как распечатать IO String
?
Также вот что выдает ошибка stack run
:
• Couldn't match type ‘IO String’ with ‘[Char]’
Expected type: String
Actual type: IO String
• In the first argument of ‘putStrLn’, namely ‘p2’
In a stmt of a 'do' block: putStrLn p2
In the expression: do putStrLn p2 • Couldn't match type ‘IO String’ with ‘[Char]’
Expected type: String
Actual type: IO String
• In the first argument of ‘putStrLn’, namely ‘p2’
In a stmt of a 'do' block: putStrLn p2
In the expression: do putStrLn p2
|
17 | putStrLn p2
| ^^
Я пытался сделать putStr ("p2: " ++ p2)
и используя print
, но безуспешно: (