[GHC] #7788: Recursive type family causes <<loop>>
GHC
ghc-devs at haskell.org
Tue Dec 30 11:52:22 UTC 2014
#7788: Recursive type family causes <<loop>>
-------------------------------------+-------------------------------------
Reporter: shachaf | Owner: simonpj
Type: bug | Status: new
Priority: high | Milestone: 7.10.1
Component: Compiler (Type | Version: 7.6.2
checker) | Keywords:
Resolution: | Architecture:
Operating System: Unknown/Multiple | Unknown/Multiple
Type of failure: Incorrect result | Test Case:
at runtime | Blocking:
Blocked By: | Differential Revisions:
Related Tickets: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
I'm all for having an evaluation depth.
But I'm cautious about adding a flag. Just saying "lazier" doesn't say
much. If we could somehow promise "lazy", for some well-specified meaning
of that term, then I'd go for that. But not "disable some implementation
optimisation that happens to allow one program (that one one cares about)
to typecheck".
Currently we flatten type-function applications, and reduce them
aggressively. I think it's pretty odd that `id2` typechecks with the
optimisation disabled; I strongly suspect that a simple variant will not.
Simon
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/7788#comment:7>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list