[Haskell-beginners] Help with types
tom.davie at gmail.com
Thu Apr 23 10:17:07 EDT 2009
On 23 Apr 2009, at 15:52, Daniel Carrera wrote:
> Daniel Fischer wrote:
>> Try explicitly converting the length to the appropriate type:
>> average xs = sum xs / fromIntegral (length xs)
> Thanks. Could you help me understand what's happening?
> 1. length returns Int.
> 2. sum returns Num.
> 3. (/) wants Fractional.
> It looks like (/) is happy with Num but doesn't like Int. This
> surprises me. I would have thought that Fractional is a kind of Num
> and Int is a kind of Fractional
Int isn't a Fractional because it can't represent fractional numbers.
More information about the Beginners