C++0x will not have concepts!

C++ standardization committee voted to remove concepts from almost-ready C++0x standard, during it's meeting in Frankfurt in July.
Concepts are probably the most discussing innovation in C++ meta-programming paradigm. The main purpose of concepts is to specify template constraints clearly and intuitively, while improving the compiler's capability to detect and diagnose variations of these constraints. Also, concepts would allow to create a type map to use some type in template, if the type and the template are not compatible directly. As reasons for such a hard decision there were stated unfinished specification, complexity and absence of real experience. Since concepts could potentially become a new cornerstone of C++, it was decided not to standardize the "raw" specification. The time will tell whether concepts will be included in next standard, and whether they will be simplified, improved or just rewritten from scratch.

Stroustrup's post on this topic is on Dr.Dobb's.
Sutter also commented this on his site.
You can find more links, e.g., on StackOverflow.

Anyway, we are looking forward to other language innovations, such as lambda expressions, rvalue references and move semantics, generalized constant expressions, etc.

Labels: ,


Post a Comment

Subscribe to Post Comments [Atom]

<< Home

Optixsoft - Software Development For Fiber Optics. Copyright 2013. All rights Reserved.
Home  |   Company  |   Services  |   Products and solutions  |   Portfolio  |   Client care  |   Contacts  |   Blog  |   Site map