Im new для Haskell и проблема с функцией interact
. Это моя примерная программа:
main :: IO ()
main = interact inputLength
inputLength :: String -> String
inputLength input = show $ length input
Он компилируется, но при запуске не выводит вывод - просто печатает строку, которая передается ему, и переходит к следующей строке. Когда я передаю interact
другую функцию String -> String
следующим образом:
upperCase :: String -> String
upperCase input = map toUpper input
он работает нормально и печатает аргумент в верхнем регистре, как и ожидалось, - так что не так с первой функцией?