
#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