
#10071: Implement deprecation-warnings for class-methods to non-method transitions -------------------------------------+------------------------------------- Reporter: hvr | Owner: Type: feature request | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.8.4 Resolution: | Keywords: AMP Operating System: Unknown/Multiple | Architecture: Type of failure: None/Unknown | Unknown/Multiple Blocked By: | Test Case: Related Tickets: #8004, #4384 | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by ekmett): The main purpose of such a feature is to give us the ability to smoothly remove redundant class members over a deprecation cycle. (Admittedly, perhaps, quite a long deprecation cycle in the case of something like `return`!) e.g. `(>>)` could be reduced to a top level binding to `(*>)` after a period with a warning making it clear that this was coming. Other examples of candidates are Traversable's `sequence` and `sequenceA`, although there is currently a technical barrier to removing `mapM` entirely. This would enable us to eventually reclaim `sequence` for use on `Applicative` data types. Having the ability to do these things means we can put together future proposals for how to move AMP (or FTP) along with reduced breakage. I confess to not being terribly concerned about the choice of syntax, though. =) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10071#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler