Topic: I'm Sorry (was Library functions in :: and also in std:: namespace)


Author: AllanW@my-dejanews.com
Date: 1998/06/10
Raw View
In article <357DE7D2.12266E2@acm.org>,
  Pete Becker <petebecker@acm.org> wrote:
>
> AllanW@my-dejanews.com wrote:
> > And yet here is a case where a compiler wouldn't be required to be
> > compatible with the previous ANSI version of the same language -- C++!
> >
> > This doesn't sound right to me; I hope you're wrong.  I trust ANSI to do
> > better than this.

> There was no "previous ANSI version of ... C++". Technically there isn't
> even an ANSI version now: the Final Draft Information Standard (FDIS) is
> still in the approval process. There's little doubt that it will be
> approved, however, and then we will have the first ISO and ANSI standard
> for C++.

Yes, you and others who pointed this out are correct.  I shouldn't have
said what I said.

Even though we've never had an official standard, we certainly have had
de-facto standards for a long time.  The ANSI-C++ effort has been going
on since shortly after I started using C++.  During that time, a lot has
happened.  There have been several books published which included most
or all of various editions of the standard.  Compiler vendors have
discussed the merits of waiting for the final standard to complete. Some
of those very same vendors gave in to market demands, and implemented
as much as feasible (and more!) of various draft standards (and will now
have to change their compilers to match the new standards).  Those vendors
found out that a lot of us form at least part of our opinion about compiler
quality by our perceptions (not always accurate!) of how well it seems
to conform to the latest public draft of the standard.

It got to be a habit, saying "The C++ Draft Standard says that...".  I
started saying "Draft Standard" the way some people say "Draft Beer"
even when they're talking about beer in a metal can.

Does the ANSI committee have a duty to make their final standard live up
to de-facto standards, when those de-facto standards were created as
by-products of the standards process itself?  Of course not.  That's
like saying that I need to make my debugged program compatible with the
first version I typed in.

I want ANSI to release draft documents publicly MORE often, not less often.
But obviously, if they do so, then there will be MORE retractions and
changes, and people who rely on the draft will be MORE impacted.
Nevertheless, I think it would be for the public good to do this.  However,
I don't want to be a hypocrite, complaining that the new version is better
but also complaining that it isn't compatible with the old.

Therefore, I apologize for saying what I said.  I obviously hadn't thought
it through.  I'm sorry.

-----== Posted via Deja News, The Leader in Internet Discussion ==-----
http://www.dejanews.com/   Now offering spam-free web-based newsreading
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: Barry Margolin <barmar@bbnplanet.com>
Date: 1998/06/11
Raw View
In article <6lmu23$k78$1@nnrp1.dejanews.com>,  <AllanW@my-dejanews.com> wrote:
>I want ANSI to release draft documents publicly MORE often, not less often.
>But obviously, if they do so, then there will be MORE retractions and
>changes, and people who rely on the draft will be MORE impacted.
>Nevertheless, I think it would be for the public good to do this.  However,
>I don't want to be a hypocrite, complaining that the new version is better
>but also complaining that it isn't compatible with the old.

ANSI and ISO only release drafts publicly when it's ready for a public
review.  One of the benefits of joining an ANSI TC is that you get access
to the works in progress in between public reviews.  So if you want to see
things more frequently, join the committee.

--
Barry Margolin, barmar@bbnplanet.com
GTE Internetworking, Powered by BBN, Cambridge, MA
*** DON'T SEND TECHNICAL QUESTIONS DIRECTLY TO ME, post them to newsgroups.
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: kanze@gabi-soft.fr (J. Kanze)
Date: 1998/06/12
Raw View
AllanW@my-dejanews.com writes:

|>  Does the ANSI committee have a duty to make their final standard live up
|>  to de-facto standards, when those de-facto standards were created as
|>  by-products of the standards process itself?

I think that the committee does have a duty to not break existing code
which conforms to the de-facto standard.  I also think that the
committee feels this as well, and recognizes it as one of their goals.

The problem occurs when there are several incompatible de-facto
standards.  This was the case for the libraries in pre-ISO C++, for
example, or the case for the pre-processor in ANSI C, before.  In both
cases, the committee had two problems:

1. Define what the standard SHOULD be, preferrably in a way as to
require as few modifications in existing code as possible, and

2. Allow vendors to provide upgrade paths for the de-facto standard that
they supported previously.

In the case of the C library, it was easy for ISO to define the upgrade
path, because the library itself was standardized.  In the case of
iostream, on the other hand, there was no real solution, because
different vendors conformed to different de-facto standards.  ISO did
the only thing it could in this case: it defined nothing with regards to
the upgrade, so as to leave the vendors entire liberty.

--
James Kanze    +33 (0)1 39 23 84 71    mailto: kanze@gabi-soft.fr
GABI Software, 22 rue Jacques-Lemercier, 78000 Versailles, France
Conseils en informatique orient   e objet --
              -- Beratung in objektorientierter Datenverarbeitung


[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]