On Mon, Aug 19, 2013 at 9:11 PM, paul Fultz
I was referring to the ConceptsLite proposal.
I'm not going to open up this can of worms in this thread, but I am not a fan of that proposal in the least.
The proposal seems to be just native support of enable_if. Which lets the compiler do better overload matching, and error reporting. It really has nothing to do with concepts.
Exactly. The C++0x concept proposal, on the other hand, had a lot more than just concept maps going for it -- it had automatically deduced associated types, an actual working way to check template definitions, and pseudo-signatures provide a much more clear and direct correspondence to archetypes, which is how definition checking was performed in the 0x proposal and is likely how it will be done in any working concept implementation with definition checking. IMO concept maps are the way to go for all of the reasons that have been talked about for the past 8 years or however long it's been, but at this point I don't care if we start out with everything implicit. Concept maps are almost a non-issue at this point. Pseudo-signatures and proper associated type support are what really need to be brought back if we are to have something more than just a glorified, native enable_if. The big problem is that a proper concepts language feature would require fundamental changes to what ConceptsLite proposes, so it's not simply a matter of getting ConceptsLite in and then improving it in the future. If ConceptsLite gets in, I find it hard to believe that C++ will ever get proper concept support. -- -Matt Calabrese