
9 Jun
2006
9 Jun
'06
12:45 p.m.
Please excuse my newbiness, but in this snippet: data (Monad m) => DataType m = DataType { f :: Char -> m () } test_function :: (Monad m) => DataType m -> m () ^^^^^^^^^^^^ test_function d = f d 'C' Why is "(Monad m) =>" required, when the definition of DataType already implies it? Is there an easier way to do this or will I have to have it in all signatures containing DataType? Thanks, Brock