I think you can check full source code at its web site to see what you missed.
well,i am reading the book :<Programming in haskell >chapter 8 functional parsersthis chapter try teaching an parser technology,but i have some problem about do keyword--some brief info of types :type Parser a = String -> [(a,String)]item :: Parser Char --item "abc" = [('a',"bc")]return' :: a -> Parser a --return' 'a' "foo" = [('a',"foo")]--below code complier notice... sorry formatp2 :: Parser (Char,Char)p2 = do x <- itemitemy <- itemreturn' (x,y)"No instance for (Monad ((-)) String))arising from a execute statementPossible fix : add an instance declaration for (Monad ((-)) String))In a stmt of a 'do' expression : y <- itemIn the expression:do { x <- item;item;y <- item;return' (x,y)}In an equation for 'p2':p2= do { x <- item;item;y <- item;....}"thanks for any helpjiangzhen <mail:jiangzhen3s@qq.com>
_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://www.haskell.org/mailman/listinfo/beginners