[GHC] #2530: deriving Show adds extra parens for constructor with record syntax
GHC
ghc-devs at haskell.org
Tue Mar 8 11:39:05 UTC 2016
#2530: deriving Show adds extra parens for constructor with record syntax
-------------------------------------+-------------------------------------
Reporter: spl | Owner: bgamari
Type: bug | Status: new
Priority: highest | Milestone: 8.0.1
Component: Compiler | Version: 6.8.3
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D669
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by bgamari):
I would be fine with retaining the old behavior, keeping the parens, for
now. It's pretty widely believed that the binding of record syntax
specified in the report was a mistake. Let's allow the Haskell Prime
committee to discuss this matter before we commit to changing `Show`.
While it's almost certainly not practical to change the binding of record
syntax, the next report could specify a more lax semantics for `Show`.
To be clear, I'm merely requesting that the committee add this matter to
their list of matters to address; their final decision is of course in
their hands. If there is a good chance that the committee will consider
such a change, then let's revert the commit in comment:25 for now and
reconsider after the committee has made their decision.
If it's unlikely that the next report will loosen `Show`, then we should
decide now whether we want retain and document the old behavior as an
infelicity of GHC's implementation, or whether we want to come into
compliance with the Report. I'm slightly leaning towards the former for
the sake of stability, although I'm happy to hear arguments in the other
direction.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/2530#comment:36>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list