If this works:
Prelude Data.Char> map toUpper ("sdfsd" ++ "dfgfdg")
"SDFSDDFGFDG"
Then why this doesn't?
Prelude Data.Char> map toUpper . (++) "sdfsd" "dfgfdg"
<interactive>:1:14:
Couldn't match expected type `a -> [Char]'
against inferred type `[Char]'
In the second argument of `(.)', namely `(++) "sdfsd" "dfgfdg"'
In the expression: map toUpper . (++) "sdfsd" "dfgfdg"
In the definition of `it': it = map toUpper . (++) "sdfsd" "dfgfdg"