Talk:Hitchhikers guide to Haskell
From HaskellWiki
1 Code Indentation:
Haskell code should be indented using the <haskell> tag:
http://www.haskell.org/haskellwiki/HaskellWiki:Syntax_highlighting
This also allows for proper cut and paste properties.
P.S. I am really enjoying this article! It provides a very nice practical introduction to Haskell. Thanks! Mforbes 10:08, 17 April 2006 (UTC)
2 Problems
When I try to compile, or load into ghci, the following code I get get this error:
cd-fit.hs:8:13:
No instance for (Text.Parsec.Prim.Stream s m Char)
arising from a use of `many' at cd-fit.hs:8:13-27
Possible fix:
add an instance declaration for (Text.Parsec.Prim.Stream s m Char)
In a stmt of a 'do' expression: dirs <- many dirAndSize
In the expression:
do dirs <- many dirAndSize
eof
return dirs
In the definition of `parseInput':
parseInput = do dirs <- many dirAndSize
eof
return dirs
Failed, modules loaded: none.
And I panic.
Code:
module Main where import Text.ParserCombinators.Parsec data Dir = Dir Int String deriving Show parseInput = do dirs <- many dirAndSize eof return dirs dirAndSize = do size <- many1 digit spaces dir_name <- anyChar `manyTill` newline return (Dir (read size) dir_name) main = do input <- getContents putStrLn $ "DEBUG: got input " ++ input -- compute solution and print it
/Liem
