If we have associated type synonyms, is there still reason to have
associated data types?

For example, we can replace:

class C b where
 data D b
 ...

instance C Int where
 data D Int = D | E

with:

class C b where
 type D b
 ...

data DInt = D | E
instance C Int where
 type D Int = DInt


Or perhaps allow, for convenience, this form (which would desugar to the
above):

class C b where
 type D b
 ...

instance C Int where
 data D Int = D | E
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to