My complete code:notThe :: String -> Maybe StringnotThe word| word == "the" = Nothing| otherwise = Just wordreplaceThe :: String -> StringreplaceThe word = go $ words wordwherego [] = ""go (x:xs) =case (notThe x) ofJust x -> x ++ " " ++ go xsNothing -> " a " ++ go xsOn Sat, Nov 18, 2017 at 9:48 AM, Brody Berg <brodyberg@gmail.com> wrote: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
_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners