
on Mon Jun 04 2012, "Simonson, Lucanus J" <lucanus.j.simonson-AT-intel.com> wrote:
Dave Abrahams wrote:
No opinion on that, but I've got another suggestion: Boost.Interface. The name comes back from an abandoned lib proposal by Jonathan Turkanis: http://www.cdiggins.com/bil.html which revolves around duck typing (though with a different approach than Steve's lib.) "Interface" is (surprisingly) a not much overloaded word in C++.
It's also a well-understood word in the OO community, meaning roughly the right thing. I guess one question is whether we'd want to sully the whole "concept-based polymorphism" flavor with OO terminology ;-)
So is that a +0.5?
+0.72
I like the name because it is sufficiently general to capture the scope of the library. This name should help answer the " what this library is for, what is the motivation?" question Neil raised. It is a library for defining interfaces. Generic interfaces kind of goes without saying since it is a boost library.
Well, yeah, but it's specifically about ad-hoc runtime polymorphism (mouthful) which is different from "Generic interface" (could mean static polymorphism with concepts).
I wouldn't tend to jump to the OO-specific definition of Interface when I see it as the name of a boost library, since it is one of the most general programming terms. Boost.Algorithm, Boost.Interface, Boost.Parameter. It seems to fit right in there.
:^) Point taken -- Dave Abrahams BoostPro Computing http://www.boostpro.com