<div dir="ltr">Hi,<br><br>Looking at the ticket [1] and a draft paper linked there [2] , I learned that in GHC 7.8, two type family instances are considered overlapping if the argument lists unify in the presence of infinite types.<br>
<br>My question is, why is this restriction necessary? A footnote in the paper states that it was not possible with GHC 7.6 to actually exploit the inconsistency. Would it be difficult to solve the problem by making this behaviour part of the specification, rather than accepting fewer programs?<br>
<br>[1] <a href="http://ghc.haskell.org/trac/ghc/ticket/8154">http://ghc.haskell.org/trac/ghc/ticket/8154</a><br>[2] <a href="http://www.cis.upenn.edu/~eir/papers/2014/axioms/axioms-extended.pdf">http://www.cis.upenn.edu/~eir/papers/2014/axioms/axioms-extended.pdf</a><br>
<br>Regards,<br>Takano Akio<br></div>