

Concepts removed from C++0x - jknupp
http://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=441
Concepts, which were probably the marquee feature of the new C++ standard, have been dropped following a vote by the standards committee.
======
russell
I would love to know what "concepts" are. It appears that they would
complicate C++ for some gain in type safety. I found this [http://www.open-
std.org/jtc1/sc22/wg21/docs/papers/2009/n290...](http://www.open-
std.org/jtc1/sc22/wg21/docs/papers/2009/n2906.pdf), but I fear that
understanding will take more time than I have this morning. (I've been away
from C++ for most of this century. :-)

~~~
jknupp
Wikipedia has a pretty thorough and accessible description
(<http://en.wikipedia.org/wiki/C%2B%2B0x#Concepts>).

Briefly, "Concepts provide a mechanism for codifying the interface that a
template parameter must meet". For example, a container class in the STL may
require that the contained type be less-than comparable. Concepts would
provide a way to express this restriction in a way that makes compiler error
messages more understandable. As one would expect, a type may include a
"requirements list" composed of orthogonal concepts (e.g. a class must be
less-than comparable AND copyable). For more advanced uses, see the Wikipedia
article or Bjarne's latest proposal.

Additionally, a number of proposed additions to the standard relied on
concepts being included. These will need to be either reworked or dropped as
well.

