Andrey Semashev wrote:
Maybe we should decompose MPL and TypeTraits first and then use the smaller bits in Core?
That is theoretically possible and perhaps even the Right Way Forward, but realistically, I don't see it happening. :-) I remember looking at MPL and Type Traits in the past with a "how hard could that be" initial attitude, but I also remember that I got discouraged pretty quickly.
OTOH, MPL and TypeTraits stuff you mentioned is commonly used, so I suspect if we limit ourselves to avoid them then Boost.Core will be almost empty.
It will fill up, trust me. The reason we're going nowhere at present is that we have no good and practical way of severing an unwanted dependency. In many such cases, moving one carefully chosen header to Core would be all it takes. We will, of course, run out of low-hanging fruits at some point, but so what? We'll have accomplished much in the meantime. Or, we could continue spilling ink here. :-)