
I wrote:
I think "deprecate" is just the wrong word. Gwern is not saying that we should remove haskell98 from Hackage, nor remove the -98 flag from Hugs, nor build a special case into compilers that make modules not compile if they use Haskell 98 syntax.
Aaron Denney wrote:
It is precisely the right word -- in the context of computer standards it means discouraging use due to new ways of accomplishing the same thing, while still allowing it. Doing any of those things you mentioned would not be deprecation, but breaking.
Sorry I was unclear. The word "deprecate" has taken on a more precise technical meaning in some contexts. It means the first in a two-or-more-step process of removing a feature. Instead of abruptly replacing an old feature with a new one, you gradually make the new feature more available and the old feature less available from version to version, until finally the old feature is completely removed. That is the sense in which I was understanding the word. In my opinion, Haskell needs better-defined deprecation processes, both for Cabal and for Haskell Prime. That would help reduce some of the pain people have been describing in this thread. Regards, Yitz