
On Sun, 15 Jun 2014 21:47:52 +0200, Gábor Lehel
In other words instances for forall-types, such as:
instance Foo (forall a. [a]) where ...
It feels obvious to me that there *would* be problems with this, but I'm curious about what, exactly, they are.
Could someone familiar with the matter either elaborate on them, or refer me to an existing explanation, a previous discussion, or something of the sort?
I *don't* have any kind of use case in mind, I'm merely seeking a better understanding of the type-system issues involved.
(I attempted Google, but didn't have much success.)
Thanks in advance.
It seems to me that it may be possible to get more information about this by searching for issues related to ImpredicativeTypes, which seem to be similar. (In fact, one could simulate instances like these by implementing type classes using ImplicitParams + ImpredicativeTypes + explicit instance records)