Making Data.Function.& levity polymorphic
Mirroring (Data.Function.$
) I think (Data.Function.&
) ought to be levity polymorphic as well
($) :: forall (rep :: RuntimeRep) (a :: Type) (b :: TYPE rep). (a -> b) -> a -> b
(&) :: forall (rep :: RuntimeRep) (a :: Type) (b :: TYPE rep). a -> (a -> b) -> b
f $ a = f a
a & f = f a