11 Dec
2025
11 Dec
'25
11:17 p.m.
Is it sound to define forallCoercible :: forall f g. (forall a. Coercible (f a) (g a)) => Coercion (Forall f) (Forall g) forallCoercible = unsafeCoerce (Coercion @(f Any) @(g Any)) I'm having trouble coming up with a reason why it is not, but my intuition for these things is not very good. Thanks, Tom