Re: Teaching new tricks to an old dog (C++ -->Ada)
From: Jerry Coffin (jcoffin_at_taeus.com)
Date: 24 Mar 2005 10:57:29 -0800
> C++ continues to evolve, but much of that evolution seems to follow a
> course of shoring up things already in the language that don't quite
> work as one might prefer, or adding a truss here and a buttress there
> to prevent or enable deficiencies in the language; e.g., cast-away
> const, a truly silly addition to the language.
IMO, this is _quite_ an inaccurate characterization.
C++ has changed exactly once since it was originally standardized. I do
not believe that _any_ of what was changed was to change behavior at
all -- rather, it was almost entirely changes in the standard to make
the wording more accurately reflect what was desired all along.
The most visible change was in the requirements for std::vector. The
original C++ standard never _quite_ requires that std::vector use
contiguous storage. That has now been changed so its storage must be
TTBOMK, nobody has ever implemented (or even designed) a version of
std::vector that didn't use contiguous storage. I'm not sure anybody
has really even proven that a version using non-contiguous storage
could even meet the standard's requirements for std::vector. It's
pretty clear from reading books written by committee members that most
(if not all) thought from the beginning of std::vector as using
IMO, your characterization bears no more than an extremely distant
relationship with reality.
-- Later, Jerry. The universe is a figment of its own imagination.