Lot of changes are happening to c++, nowadays. Even after the
standardization, we see many interesting things, like, threading,
regex, rope, etc. I read some TR1 and TR2 proposals, and I am not very
sure, we are going to get all this into c++.
All the stuff in TR1 will be in the next standard (along with a lot of
other things), those in TR2 will have to wait a while.
These are not brand-new concepts, but why these things took this many
years to get into c++?.
Because a committee have to approve them, not all members are convinced
that all the features are needed. And since there is not enough time to
get all of them in compromises have to be be made. Remember also that
all the members in the committee are doing this on their spare time or
the time their companies allows them to spend, none of them are working
full time on the standardisation.
Another problem is that all the feature have to be examined to determine
of they actually add any value, or if they would just be bloat in the
standard. And all feature have to be examined so that they work together
with the other features in the standard. Many libraries have lots of
functions/classes that does not work together with other parts of the
library or more than one function for doing something.
And all the already existing feature have to be retrofitted to work with
new ones, just imagine the work needed to make the existing containers
and algorithms work with Concepts. And when all that is done one have to
check for inconsistencies and ambiguities, considering that the current
working paper is nearly 1200 pages that's no easy task.
Is still the c++ target environment now same as the target environment
before the standardization?
C++ is a multipurpose programming language with focus on systems
programming and allows for usage of multiple programming paradigms, and
I think that has been the goal for quite some time. IT does not target
any specific environment that I'm aware of, but as I said, it is
primarily a systems programming language, though the Performance TR
describes how to efficiently use it in an embedded environment.