Generic1 deriving: Can we replace Rec1 f with f :.: Par1?
It seems like
Rec1 f is isomorphic to
f :.: Par1. Is it possible and beneficial to replace the former with the latter and deprecate/remove
- Currently, a parameter type is found in
Rec1. By removing
Rec1, there would be only one place for parameters. This simplifies generic functions.
- It is in the interest of reducing redundancy in the representation, something that appears to be consistent with the design of the representation types (e.g. using the same type for multiple meanings).