Я пытаюсь скомпилировать эту функцию из Learn You Haskell for Great Good .
removeNonUppercase st = [ c | c <- st, c `elem` ['A'..'Z']]
, поместив его в файл removeNonUpperCase.hs.
Компилируется нормально, но при передаче аргумента:
ghci> removeNonUppercase "Hahaha! Ahahaha!"
компилятор говорит:
<interactive>:1:0: Not in scope: 'removeNonUpperCase'
Почему?
PrintScreen: http://img535.imageshack.us/img535/9545/notinscope.png
Вы определили метод как removeNonUppercase (строчные буквы c), но вы называете его как removeNonUpperCase (прописные буквы C).
removeNonUppercase
removeNonUpperCase