Boost logo

Boost :

Subject: Re: [boost] [Developing for Boost saves time]( was Re: Another variant type (was: [peer review queue tardiness] [was Cleaning out the Boost review queue] Review Queue mem)
From: pfultz2 (pfultz2_at_[hidden])
Date: 2015-05-05 14:53:16

> It doesn't even come close to fully improving template error messages in
> way the C++0x concepts could

In what areas is Concepts Lite lacking in error reporting? Are you referring
the lack of multi-phase checking in Concepts Lite? Because it is possible to
have multi-phase checking in the future, and I believe it is on the roadmap
be added.

> The entire taxonomy of standard concepts for C++0x was done and the entire
> standard library was updated for it in N2914. It STILL got cut.

Well, I think one issue that always gets brought up is the number of
necessary in C++0x. Concepts Lite is taking the approach of having larger
defined concepts, rather than defining smaller more modular based concepts.
Either approach could be taken with C++0x concepts, and I don't think it
to an inherit design flaw with C++0x concepts.

> It's a flawed design

The core part of its design is built around propositional logic and
While its an interesting idea, taking this design approach prevents future
features such as specialization and concept mapping, which are vital for
programming. The idea of creating a fork for concept-based libraries would
lead to similar problems with the python 3 fork. Plus, it comes with other
surprises(like not being able to use type traits in the requires clause).

> it would be a mistake for it to be in the standard.

Especially, since the current tools are improving in regards to error
reporting(even when using the current template constraints) that the need
Concepts Lite becomes less. This would further hinder adoption even if it
were in
the standard.


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