[Haskell-cafe] More experiments with ATs
Steffen Schuldenzucker
sschuldenzucker at uni-bonn.de
Sun Jul 4 07:58:49 EDT 2010
On 07/04/2010 01:49 PM, Sjoerd Visscher wrote:
>
> On Jul 4, 2010, at 11:31 AM, Andrew Coppin wrote:
>
>>>> type family F f a :: *
>>>> class RFunctor f where
>>>> (%) :: f a b -> (a -> b) -> F f a -> F f b
>>>>
>>
>> I have literally no idea what a type family is. I understand ATs (I think!), but TFs make no sense to me.
>>
>> (For this reason, most if not all of the rest of this post doesn't make sense.)
>
> I would have liked to use ATs here, like this:
>
>> class RFunctor f where
>> type F f a :: *
>> (%) :: f a b -> (a -> b) -> F f a -> F f b
>
> But this isn't valid as ATs require all type variables to be in scope, and 'a' isn't.
> There's a GHC ticket for this: http://hackage.haskell.org/trac/ghc/ticket/3714
This works (on my ghc-6.12.2):
> class Rfunctor f where
> type F f :: * -> *
> (%) :: f a b -> (a -> b) -> F f a -> F f b
> [...]
-- Steffen
More information about the Haskell-Cafe
mailing list