StringUtil.hs
import Data.Char (toUpper) stringToUpper :: [Char] -> [Char] stringToUpper [] = [] stringToUpper (x:xs) = (toUpper x) : (stringToUpper xs)
*Main> :load StringUtil.hs [1 of 1] Compiling Main ( StringUtil.hs, interpreted ) Ok, modules loaded: Main. *Main> *Main> stringToUpper "abcdEFGH" "ABCDEFGH" *Main> stringToUpper "abcdEFGHijkm" "ABCDEFGHIJKM" *Main>
We can rewrite the
above functionality using map function like below. ‘map’ function takes a
function and list as inputs and applies the function to every element of the
list.
*Main> :m Data.Char Prelude Data.Char> Prelude Data.Char> let stringToUpper xs = map toUpper xs Prelude Data.Char> Prelude Data.Char> stringToUpper "abcdEFGH" "ABCDEFGH" Prelude Data.Char> stringToUpper "abcdEFGHijkm" "ABCDEFGHIJKM" Prelude Data.Char>
No comments:
Post a Comment