初心者として、文字列のケースを反転するスニペットを書きました。
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
そして、hackerearth.com の IDE で完全に動作しました
ただし、自分のマシンで同じものを実行しようとすると、コードが際限なく実行され、出力もエラーも発生しません。
私は何を間違っていますか?