Re: deprecating

Johan Tibell <[email protected]>
Newsgroups gmane.comp.lang.haskell.cvs.ghc,gmane.comp.lang.haskell.cabal.devel
Message-ID <CAK-tuPb6PLfM3y98hm9bcWVA9gHNQXFHeL1T=sNvbP2q8ZqRJQ@mail.gmail.com>
On Mon, Oct 22, 2012 at 9:14 AM, Simon Peyton-Jones
<[email protected]> wrote:
> Do you mean “silently and forever”?   Deprecation simply means that
> everything continues to work, but you get a little nudge to change.  Isn’t
> that what it’s for?  If you treat deprecation as equivalent to error, then
> there isn’t much point in having it.

Most people do treat deprecations as errors; having your compilation
output warning clean makes you less likely to miss those warnings that
are really important.

If you look at some widely used languages, like Java, you see that
they only deprecate things that are really error prone but avoid
deprecations altogether otherwise. When they do deprecate something,
they typically don't remove the deprecated entity, ever.

> It’s possible that making Rank2Types = RankNTypes silently and forever is
> the right answer.  It just doesn’t feel right to me.  But I’m not a library
> author and I don’t feel terribly strongly.

I think so.

-- Johan
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.