[Haskell-cafe] Newbie question
byorgey at gmail.com
Mon Jan 21 10:43:47 EST 2008
2008/1/21 Alexander Seliverstov <seliverstov.a at gmail.com>:
> Hi, I try to undestand why this code dosen't work
> f :: (Num a)=>Integer->a
> f i = i
> Integer is an instance of Num, so why does this code produce error:
> "Couldn't match expected type 'a' againsta inferred type 'Integer' ..."
But the type of this function says that it can return *any* instance of Num
-- that is, the caller gets to choose which particular instance of Num they
want. This function can only ever return an Integer.
There is actually a function of this type, however; it's called
fromIntegral. It works because it is a member of the Num type class.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe