Boost logo

Boost :

Subject: Re: [boost] [GSoC] [Boost.Hana] Formal review request
From: pfultz2 (pfultz2_at_[hidden])
Date: 2014-08-02 17:57:13

> I'm trying to promote the simplest view of "type constraints" which can
> possible work. Your solution does more - at the cost of requiring a lot
> more effort to understand and use correctly. (there is no documentation
> about it either). Then there is the fact that it requires a compiler
> "man enough" (hmmm - why not woman enough?) to use. So I don't
> think it's a good vehicle for promoting the concept of type constraints.

I don't think Eric's solution requires more to understand than using
Boost.ConceptCheck, unless you want to do more such as overloading.

Also, my library version of the this does have documentation and has been
tested and works on gcc 4.6/4.7/4.8/4.9 and clang 3.4(I do plan to submit a
boostified version soon).

> I would just like every library invoke a compile time assert whenever
> in instantiate a template with type arguments which won't work.
> Boost Concept Check can do this. In fact, maybe BCC is over kill.
> I seriously considered recommending making concept checking classes with
> just static_assert. But in the end I opted for recommending BCC.

Yes, of course, static assertions can help improve error messages and its
better than nothing, but it is not the same as template constraints. This
become more obvious as more people start using concept predicates. Ideally,
a library is targeting C++11 they could perhaps use concept traits rather

View this message in context:
Sent from the Boost - Dev mailing list archive at

Boost list run by bdawes at, gregod at, cpdaniel at, john at