[GHC] #10056: Inconsistent precedence of ~

GHC ghc-devs at haskell.org
Sun Feb 1 23:12:06 UTC 2015


#10056: Inconsistent precedence of ~
-------------------------------------+-------------------------------------
        Reporter:  crockeea          |                   Owner:
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Compiler          |                 Version:  7.8.4
  (Parser)                           |                Keywords:
      Resolution:                    |            Architecture:
Operating System:  Unknown/Multiple  |  Unknown/Multiple
 Type of failure:  GHC rejects       |               Test Case:
  valid program                      |                Blocking:
      Blocked By:                    |  Differential Revisions:
 Related Tickets:                    |
-------------------------------------+-------------------------------------

Comment (by dfeuer):

 Replying to [comment:2 crockeea]:
 > Replying to [comment:1 htebalaka]:
 > > I ''thought'' that infix type operators took the same precedence as
 their value level versions
 >
 > I'm not sure what you mean by "value level versions". Surely you
 wouldn't expect the precedence of your type family `(+) :: * -> * -> *` be
 related in any way to the function `(+) :: (Num a) :: a -> a -> a`.

 I certainly ''would'' expect the fixity of the type operator `+` to be the
 same as that of the function `+`, because the parser doesn't know about
 kinds. It seems the complaint is that `~` has too high a precedence for
 its purpose.

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


More information about the ghc-tickets mailing list