
Jeremy Siek <jeremy.siek@gmail.com> writes:
I also agree with Joel's position on airplanes (I misunderstood what he was saying at first... but yes, a pile of airplane parts is not an airplane), which is why I've always been in favor of explicit concept conformance. I see the concept_map declaration as the final touch that turns the parts into an airplane.
That isn't even enough in this case. One pair<int*,int*> object is just a couple of pointers, while another is a sequence of ints. Scoped concept_maps get us closer, but I'm not sure it's fully general: you could still have both kinds of pair in the same code, right?
I think the main thing to take away from this is that scoped concept maps are good. They allow you to have it both ways, in different parts of your program.
And yes, we could solve the problem by requiring wrappers, but wrapping stuff is a pain.
Yep. There's too much of it already in C++. -- Dave Abrahams Boost Consulting www.boost-consulting.com