Hi haskellers,
I am trying to understand why I get the following error in learning applicative style.
Prelude> let estimates = [5,5,8,8,2,1,5,2]
Prelude> (/) <$> Just $ foldl (+) 0 estimates <*> Just . fromIntegral $ length estimates
<interactive>:54:1:
Non type-variable argument in the constraint: Fractional (Maybe r)
(Use FlexibleContexts to permit this)
When checking that ‘it’ has the inferred type
it :: forall a r.
(Fractional (Maybe r), Num a, Num (Int -> Maybe a -> r)) =>
Maybe r -> Maybe r
All the parts work individually. If use let and assign the parts to x and y it also works.
E.g. This workslet x = Just $ foldl (+) estimatesLet y = Just . fromIntegral $ length estimates(/) <$> x <*> y
I clearly do not understand exactly how these work. :-)
Thanks for any help,-wes
_______________________________________________
Beginners mailing list
Beginners@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners