[Haskell-cafe] First time haskell - parse error!
Deniz Dogan
deniz.a.m.dogan at gmail.com
Tue Mar 9 14:12:32 EST 2010
2010/3/9 boblettoj <boblettoj99 at msn.com>:
>
> Hi, i am getting an error when trying to compile this part of my program, its
> my first time using haskell and as lovely as it is it didn't give me very
> much to go on in the error message!
>
> <code>score :: String -> String -> String
> score [s] [] = false
> score [s] [g] =
> if valid 4 g
> then (s1 ++ s2 ++ s3 ++ s4) where
> s1 = "Golds "
> s2 = show (gold s g)
> s3 = ", Silvers "
> s4 = show (silver s g)
> else "Bad Guess"</code>
>
> when i try to compile it says: test.hs 63:29: parse error on input 'where'
> (its the line beginning with 'then')
> Anybody got any ideas whats going on?
> thanks!
> --
> View this message in context: http://old.nabble.com/First-time-haskell---parse-error%21-tp27839657p27839657.html
> Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
You can't use `where' in the middle of an `if'. This should get rid of
the parse error:
score :: String -> String -> String
score [s] [] = false
score [s] [g] =
if valid 4 g
then (s1 ++ s2 ++ s3 ++ s4)
else "Bad Guess"
where
s1 = "Golds "
s2 = show (gold s g)
s3 = ", Silvers "
s4 = show (silver s g)
--
Deniz Dogan
More information about the Haskell-Cafe
mailing list