Le 05/07/11 23:47, jameskuyper a écrit :
There's always a lot of old code that never gets rewritten to work
with/take advantage of new features in the language. That's one of the
key reasons why both I and the committee prefer a more conservative
approach to language change than you usually do. It's rather
refreshing to see you recognizing this as a potential problem. There's
some hope for you yet!
NONE of the proposal I have developped (operator overloading,
usage of const, container library) makes ANY incompatible changes
with existing code or makes for a full replacement of existing code.
My proposals centered in NEW syntax/semantics for NEW code.
If the committee does a better job of this than you give them credit
for, the reason why new code might be written using the new facilities
is portability. Code that's targeted to run in both Windows and POSIX
environments could be simplified by using the new C features, rather
than being written separately for each environment. This is a
relatively minor advantage, which is why it's taken so long to
convince the committee to consider the issue, but it is still and
advantage.
The fact is that Plauger (who works for microsoft) pushed this
into C++ apparently, and the C committee "decided" to follow him
even if nobody was asking for that. It is a priority because
the C++ changes, not because of the C language needs.
The committee hasn't done any improvement of the completely obsolete
C library, refuses to consider (for 5 years) a revision of the
overflow bug for asctime() in the language standard text, refuses
any change and suddenly wakes up to life, and will promulgate
a new standard in record time because Plauger needs his multi-
threading library as a standard.
OK, go ahead.
I certainly hope that someone will have proven that the new features
are implementable, by implementing them, before the final vote is made
on the decision to mandate them. Do you have any rational reason to
think that they won't be?
Microsoft has abandoned C as a language and tries to get away from
it with the new versions of windows OS. C# and .net are now their
focus, and the decisions of the C standards committee are not much
worth for them: they never implemented c99, and probably will not
do anything for the next one either.
Gnu stopped caring about C some time ago, and even if their
implementation of c99 is a good one they stopped developing
it some years ago since their main effort is c++. They may
implement the new features or not, nobody knows. If they stopped
implementing c99 it is unlikely that they give much credit to
the committee for the next standard.
They weren't widely supported ... because they were easy to
implement?! Do you think they would have been more widely adopted if
they had been harder to implement?
You are misquoting me because you have nothing to say.
...
The frequent use of "thread" in this forum to refer to a connected set
of messages makes it difficult to search for such things accurately.
However, I quickly found such a suggestion that had been made as
recently as January this year, in the thread titled "Interview with
Mr. Stroustrup". Considering the source, I wouldn't consider it a
serious suggestion, but it was widely discussed by many people,
including yourself.
That was a C++ guy that told here: Do as C++ does. Since C++ wants
multi-threading support C should do it too. It was a two lines
sentence, and all the discussion was about Stroustroup and C++,
not C.
I have no desire to support them any farther than I actually am in
agreement with them. As I'm frequently in disagreement with them, and
have frequently expressed such disagreement, I'm at a loss as to how
you could conclude otherwise.
...
Well, in that case it should be pretty easy to confirm whether the
proposal can be implemented; if nothing else, Plaugher can make the
needed modifications to his own library, and determine whether they
work. Since his library is fairly popular, that also suggests that
there's a reasonable amount of existing experience with how to use a
library that's not too different from the final proposal.
But WHY do we have to include that library in the core language?