[GHC] #7021: Tuple (and other exotic predicates) not yet handled in Template Haskell
GHC
ghc-devs at haskell.org
Thu Jan 9 08:23: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 simonpj):
I rather agree with Richard: make `Pred` and `Type` into synonyms. That's
what GHC does internally, and it works pretty well.
However that would be a bit of a bump: people's programs would break. A
possible half-way house would be to have
{{{
data Pred = TypeP Type
| ClassP Name [Type]
| EqualP Type Type
}}}
and then deprecated `ClassP` and `EqualP` in favour of the equivalents in
`Type`. Once that has settled down, making `Pred` into a synonym would
still be a breaking change, but a very routine one to absorb.
Or it might be better to do it all at once. I'm not sure, and would
welcome opinions.
Simon
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/7021#comment:5>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list