[Haskell] [Haskell-cafe] Help with polymorphic functions

Reinier Lamers tux_rocker at reinier.de
Thu May 8 15:32:24 EDT 2008


Op Thursday 08 May 2008 21:10:08 schreef Wei Yuan Cai:
> shift is defined as "a -> Int -> a"
It's not. It's defined as "(Bits a) => a -> Int -> a" or something along those 
lines. So there is a restriction that the type a must be a member of the Bits 
typeclass.

Because "test" is essentially just "shift", its type must also be  "(Bits a) 
=> a -> Int -> a".

Reinier


More information about the Haskell-Cafe mailing list