Компиляция кода даетНе удается отладить ошибку несоответствия типов Haskell
(+++) :: [a] -> [a] -> [a]
lst1 +++ lst2 = if null lst1
then []
else (head lst1) : (tail lst1 +++ lst2)
main :: IO()
main = do
putStrLn "start"
[1,2,3] +++ [4,5,6]
putStrLn "end"
не могли соответствовать ожидается тип IO a0 'с фактическим типом' [Integer] В зЬтЬ блока «делать» : [1, 2, 3] +++ [4, 5, 6] В выражении: do {putStrLn "start"; [1, 2, ....] +++ [4, 5, ....]; putStrLn "end"} В уравнении для 'main': main = do {putStrLn "start"; [1, ....] +++ [4, ....]; putStrLn "end"}
Что я ничего не сделал - это выглядит хорошо для меня.
Вам нужно «распечатать $ [1,2,3] +++ [4,5,6]'. –