
#15706: Refactor NewHsTypeX to DerivedCoreTy -------------------------------------+------------------------------------- Reporter: int-index | Owner: (none) Type: task | Status: new Priority: low | Milestone: 8.8.1 Component: Compiler | Version: 8.6.1 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- `NewHsTypeX` is not a good name for this construct: {{{ data NewHsTypeX = NHsCoreTy Type -- An escape hatch for tunnelling a *closed* -- Core Type through HsSyn. }}} * the `New` prefix refers to the fact that it is a new approach, rather than to a property of the entity * it is not suggestive of the way `NewHsTypeX` is used in the code and why it exists A better name would be `DerivedCoreTy`. The reason for `NHsCoreTy` existence and its invariant of being closed is the `deriving` mechanism. Doing this renaming also exposes incorrect uses of `NHsCoreTy` in a couple of places that violate the invariant (in some calls to `unifyKind`). -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15706 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler