
26 Feb
2015
26 Feb
'15
1:53 p.m.
Ah sorry, I think I responded only to you, not to the whole list. If anyone else is interested, my answer was: test :: (forall a. a -> a) -> Int -> Int test f a = f a Also consider this: foo :: Maybe a -> Maybe b foo Nothing = Nothing vs. foo :: Maybe a -> Maybe b fooo a@Nothing = a You don't actually need RankNTypes to bump into this. Don't feel stupid, I remember running into this kind of things frequently when I was trying to define Prisms (from lens) by hand ;) Kind regards, Marcin Mrotek