News for hackers. Stuff that matters.
Re:Why std::bind can’t be formally deprecated by Karellen on Sunday July 02, 2017 @06:19PM (#14684642)
Hang on, deprecated != removed. Deprecated just means "do not use in new code", and you'll probably get a diagnostic by default for existing uses, which you might even be able to turn off with a compiler switch.

Also, not being able to create an automated tool to rewrite someone's code is not the same as not being able to tell them how to fix the code themselves.

Re:Why std::bind can’t be formally deprecated by gknoy on Sunday July 02, 2017 @06:42PM (#14684717)
> Deprecated just means "do not use in new code"

I originally learned that "deprecated" was meant to indicate that the language no longer promised to include that feature in a future version. So, it still works now, but this is your warning that you should be moving away from it.

Re:Why std::bind can’t be formally deprecated by djur on Sunday July 02, 2017 @10:59PM (#14685580)
The C++ standard defines it like that: "Normative for the current edition of the Standard, but having been identified as a candidate for removal from future revisions. An implementation may declare library names and entities described in this section with the `deprecated` attribute."
Re:Why std::bind can’t be formally deprecated by kazinator on Sunday July 02, 2017 @08:01PM (#14684978)
Merriam-Webster gives these meanings for "deprecate": "to pray against something, such as an evil (archaic)", "to avert", "to play down" (e.g. one's talent), "to express disapproval of, to disparage".
Re:Why std::bind can’t be formally deprecated by kazinator on Monday July 03, 2017 @11:19AM (#14688862)
How this definition is relevant is that the word is used specifically for features that are looked down upon as being harmful in some way, and so using them in programs is creates some kind of risk in addition to "this won't build when it goes away".

The dictionary meaning which comes into play in the software maintenance use of "deprecated" is that "disapprove/disparage" one.

Something that will be removed because it is unfashionable, and being replaced by shiny new idioms, is "obsolescent". Rather than abruptly removing such features, we phase them through an obsolescence period.

Deprecated example: the C gets function (almost impossible to use without creating a security hole, now removed from ISO C).

Obsolescent example: bzero function. (Appears in tradtional BSD sockets networking code, superseded by memset).

Re:Why std::bind can’t be formally deprecated by kazinator on Sunday July 02, 2017 @07:58PM (#14684968)
"deprecated" means "this is inferior garbage that's going away for that reason".

It's a black stain on any code which uses it, old or new.

A neutral word for "going away" is "obsolescent".