> data Record = R {
> blub :: Foo a => a -> [a]
> }
Wouldn't the pure-Haskell'98 definition
data Foo a => Record a = R {
blub :: a -> [a]
}
work as well, if not better? Certainly, ghc accepts both of
> print (bar (3::Int)) -- works!
> print ((blub r) (3::Int)) -- works also!
with this definition.
Regards,
Malcolm