Haskell-ghci, function toUpper not found?

3k Views Asked by At

I'have right now installed the ghci version 8.6.2 and following a tutorial I write:

toUpper "something"

but ghci compiler prints out:

Variable not in scope: toUpper :: [Char] -> t

Do I miss some libraries or anything else?

1

There are 1 best solutions below

0
On BEST ANSWER

The toUpper :: Char -> Char is not part of the Prelude, and thus not imported "implicitly".

You can import it with:

import Data.Char(toUpper)

or just:

import Data.Char

to import all functions, datatypes, etc. defined in that module.

Note that it has signature Char -> Char, so it only converts a single character to its uppercase equivalent.

You thus need to perform a mapping:

Prelude Data.Char> map toUpper "something"
"SOMETHING"