[Haskell-beginners] Help with meaningful error message...

aditya siram aditya.siram at gmail.com
Tue Jun 7 23:50:34 CEST 2011


I think the parse error is here:

forwardRoutes m [] = m
forwardRoutes m (row:rows) =
 case M.lookup m (row !! 0) of
   Just route -> M.update m (row !! 1):route
   Nothing -> M.insert from []
 forwardRoutes m rows <----------------- you probably want to remove this line


-deech


On Tue, Jun 7, 2011 at 4:44 PM, Sean Charles <sean at objitsu.com> wrote:
> OK, I am losing enough hair and accruing follicular damage more than I can
> take tonight, what is wrong, what have I done that is stupid and wrong
> etc...
>
> called:
>  let routes = forwardRoutes M.empty csvdata  -- [Record] from Text.CSV
>
> implemented:
>
> forwardRoutes m [] = m
> forwardRoutes m (row:rows) =
>  case M.lookup m (row !! 0) of
>    Just route -> M.update m (row !! 1):route
>    Nothing -> M.insert from []
>  forwardRoutes m rows
>
>
> error: scread.hs:101:2: parse error on input `forwardRoutes'
>
> Um yeah, thanks, that's really helping me figure it out.
>
> All I wanted to do was build a map of keys and values where each value is a
> list that gradually accumulates(!) every row that ends at (!!1)  from the
> same location (!!0) of my spreadsheet. I started off zipping with 'repeat
> []' and stuff but I just want to know what I have done to annoy the compiler
> enough to want to taunt me with that message.
>
> And, on the verge of posting I think the above code won't work anyway
> because I am not passing the new Map from 'insert' through.......
>
> ARGH!
> :(
>
>
>
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
>



More information about the Beginners mailing list