Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Haskell-ghci, function toUpper not found?

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?

like image 787
glc78 Avatar asked Mar 05 '23 02:03

glc78


1 Answers

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"
like image 110
Willem Van Onsem Avatar answered Mar 07 '23 15:03

Willem Van Onsem