[GHC] #10189: explicit promotions of prefix data constructors can't be parsed naturally

GHC ghc-devs at haskell.org
Tue Mar 31 14:36:07 UTC 2015


#10189: explicit promotions of prefix data constructors can't be parsed naturally
-------------------------------------+-------------------------------------
        Reporter:  Kinokkory         |                   Owner:  Kinokkory
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:  7.12.1
       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:  #10188            |
-------------------------------------+-------------------------------------

Comment (by goldfire):

 This is a hard call for me. While I agree that putting the tick inside the
 parens is better, I'm leery of having two different ways to say the same
 think, with no change in meaning. It just seems confusing. And, removing
 the current (outside-the-parens) notation would be a large disruption for
 little benefit.

 I vote: fix the pretty-printer to match the parser, but leave the parser
 alone. This makes me sad, but it seems better than the alternatives.

 By the way, also look at infix promoted alphanumeric constructors:

 {{{
 data Foo = Bar Bool Bool

 type Baz = True '`Bar` False
 }}}

 Note where that tick goes. I hate it! But, I still vote against changing
 it. Just make sure the pretty-printer does the right thing.

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


More information about the ghc-tickets mailing list