Amiruddin Nagri <[email protected]> writes: > Hi All, > > I am a newbie to Haskell, and have been using Programming in Haskell along > with Eric Meijer videos covering the book syllabus. I am currently on > Chapter 8 Functional Parsers, and trying to implement few of the examples > given in the book. > > Following is the example : > > item = \inp -> case inp of > [] -> [] > (x:xs) -> [(x,xs)] > > p = do x <- item > y <- item > z <- item > return (x,y,z) > > ========= > > When I compile it using GHCI, I get the following error : > > [1 of 1] Compiling Main ( parser.hs, interpreted ) > > parser.hs:5:8: > No instance for (Monad ((->) [t])) > arising from a do statement at parser.hs:5:8-16
Try importing Control.Monad.Instances and see if that gets it to work. > Possible fix: add an instance declaration for (Monad ((->) [t])) > In a stmt of a 'do' expression: x <- item > In the expression: > do x <- item > y <- item > z <- item > return (x, y, z) > In the definition of `p': > p = do x <- item > y <- item > z <- item > .... > Failed, modules loaded: none. > > ========= > > I tried googling for samples, above error message etc. But not getting to > solution. Can anyone guide me as to what am I doing wrong and how can I fix > this. > > Regards, > Amiruddin Nagri, > India > > GTalk : [email protected] > _______________________________________________ > Haskell-Cafe mailing list > [email protected] > http://www.haskell.org/mailman/listinfo/haskell-cafe -- Ivan Lazar Miljenovic [email protected] IvanMiljenovic.wordpress.com _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
