Abbreviate repeated qualifiers in instance declarations
wisnesky opened this issue · 1 comments
wisnesky commented
I'd like to write 'TyMap f `[a,b,c]' instead of (f a, f b, f c) in instance declarations a la Marco's trick for regular function type declarations, but it doesn't quite work.
instance (Show var, Show ty, Show sym, Show en, Show fk, Show att, Show gen, Show sk,
Show x, Show y, Show gen', Show sk', Show x', Show y')
=> Show (Transform var ty sym en fk att gen sk x y gen' sk' x' y') where
~~>
instance (Show `[var, ty sym, ...]) =>
wisnesky commented
This one is especially important if we want to avoid unnecessary qualifiers while also keeping lists of qualifiers textually short.