Made some changes to replaceThe to handle the possibility of empty list:replaceThe :: String -> StringreplaceThe word = go $ words wordwherego [] = “”go (x:xs) =case (notThe x) ofJust x -> x ++ “ “ ++ go xsNothing -> “ a “ ++ go xsTyped this on a phone, sorryOn Sat, Nov 18, 2017 at 09:16 Jim <jimbo4350@gmail.com> wrote:Hey guys,
Thiis is my function below:
notThe :: String -> Maybe String
notThe word
| word /= "the" = Just word
| word == [] = Just []
| otherwise = Nothing
replaceThe :: String -> String
replaceThe word = go (words word)
where go (x:xs)
| notThe x == Just [] = []
| notThe x == Just word = word ++ go xs
| notThe word == Nothing = " a " ++ go xs
> replaceThe "what"
"what*** Exception: chap12.hs:(13,13)-(16,55): Non-exhaustive patterns
in function go
I thought I covered all the potential patterns in my replaceThe
function. I'm not sure what pattern I've missed, any thoughts?
Best regards,
Jim
_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners