For mean xs = sum xs / length xs, I got the following: test.hs:8:10: No instance for (Fractional Int) arising from a use of `/' at test.hs:8:10-27 Possible fix: add an instance declaration for (Fractional Int) In the expression: sum xs / length xs In the definition of `mean': mean xs = sum xs / length xs
test.hs:8:10: Couldn't match expected type `b' against inferred type `Int' `b' is a rigid type variable bound by the type signature for `mean' at test.hs:7:27 In the expression: sum xs / length xs In the definition of `mean': mean xs = sum xs / length xs test.hs:8:19: Couldn't match expected type `a' against inferred type `Int' `a' is a rigid type variable bound by the type signature for `mean' at test.hs:7:13 In the second argument of `(/)', namely `length xs' In the expression: sum xs / length xs In the definition of `mean': mean xs = sum xs / length xs On Fri, Jul 1, 2011 at 2:00 PM, aditya siram <aditya.si...@gmail.com> wrote: > What compiler errors are you getting? > -deech > > On Fri, Jul 1, 2011 at 12:55 AM, Ruohao Li <liruo...@gmail.com> wrote: > > Hi guys, > > I just started learning some Haskell. I want to implement a mean function > to > > compute the mean of a list. The signature of the function is: > > mean :: (Num a, Fractional b) => [a] -> b > > But when I implement this simple function, the compiler keep whining at > me > > on type errors. I know this is wrong: > > mean xs = sum xs / length xs > > But how to get it right? Thanks. > > _______________________________________________ > > Haskell-Cafe mailing list > > Haskell-Cafe@haskell.org > > http://www.haskell.org/mailman/listinfo/haskell-cafe > > > > >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe