2008/1/21 Alexander Seliverstov <[EMAIL PROTECTED]>: > 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. -Brent
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe