[GHC] #7021: Tuple (and other exotic predicates) not yet handled in Template Haskell

GHC ghc-devs at haskell.org
Wed Jan 29 22:57:41 UTC 2014


#7021: Tuple (and other exotic predicates) not yet handled in Template Haskell
-------------------------+-------------------------------------------------
        Reporter:        |            Owner:
  goldfire               |           Status:  new
            Type:        |        Milestone:  7.8.1
  feature request        |          Version:  7.5
        Priority:        |         Keywords:  ConstraintKinds
  normal                 |  TemplateHaskell
       Component:        |     Architecture:  Unknown/Multiple
  Template Haskell       |       Difficulty:  Unknown
      Resolution:        |       Blocked By:
Operating System:        |  Related Tickets:
  Unknown/Multiple       |
 Type of failure:        |
  None/Unknown           |
       Test Case:        |
        Blocking:        |
-------------------------+-------------------------------------------------

Comment (by yoeight):

 Thanks for your comments.

 About `foldM` and `go`, I thought I could traverse `tys` and apply the
 resulted type in one pass. Using `repTapps` is not as direct. Anyway, I
 ported the code to `repTapps` as it seems more appropriate. `foldM` and
 `go` looked too obfuscated.

 So as you suggested, `EqualityT` is now a nullary constructor and nullary
 type families are now supported. Let me now if there's any missing use
 case.

 Thanks again for your concern and time, don't worry I don't need to be
 mothered :-). Being offended by helping comments would be inconsistent
 with my 'How ghc works ?' goal.

 Updated patches are [https://gist.github.com/YoEight/8370987 here]

 Also do you have any idea why `testsuite/tests/perf/compiler/T4801.hs`
 fails ? It's the only failure I got so far.

 Regards,

 Yorick

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/7021#comment:14>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list