
#10886: Remove the magic from `Any` -------------------------------------+------------------------------------- Reporter: goldfire | Owner: goldfire Type: task | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 7.10.2 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Revisions: | -------------------------------------+------------------------------------- The `Any` type used to be very highly magical: a poly-kinded type in a mono-kinded world. Then it became only normally magical: a datatype with a return kind of `k` (instead of `*`). Then it became only a bit magical: a closed type family with no equations. Now that we have non-magical empty closed type families, I believe that we can remove the last bit of magic and just define {{{ type family Any :: k where { } }}} somewhere (`GHC.Types`?), wire it in (like, e.g., `Bool`), and be done with it. Objections? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10886 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler