>addToSPair :: Char -> (String, String) -> (String, String) What about: addToSPair :: Char -> String -> String -> (String,String) so that the pattern match is: addToSPair c xs ys = (c:xs,ys) This is irrefutable? Keean.