Фрагмент кода работает в онлайн IDE, но не на моем локальном GHC
Как новичок, я написал фрагмент, чтобы перевернуть случай строки.
module Main
where
import Data.Char
main=do
str<-getLine
putStrLn ( reverser(str) )
reverser:: String -> String
reverser [] = []
reverser (x:xs) | isUpper x = toLower x : reverser xs
| otherwise = toUpper x : reverser xs
И он отлично работал в IDE hackerearth.com
Тем не менее, когда я попытался запустить то же самое на моей машине, код выполняется бесконечно и не выдает ни вывода, ни ошибки.
Что я делаю неправильно?