While we are piling on Generics
, here are my own gripes about it:
- The naming –
M1
S1
U1
K1
etc., despite doing a lot of generics programming over the years I have never gotten a good intuition for which is which. - How much overhead is necessitated when/if GHC fails to inline away things going through a generic
Rep
and how slow all that inliner work is. It would be much much better IMO if the generic representation was a flat SOP representation like in Data.Record.Generic - Finally: why aren’t documentation comments in
Meta
? That’d be such a nice feature for many encoder/decoder libraries. Basically the same gripe applies for TH though.