Topic: FAQ for comp.std.c++


Author: maxtal@physics.su.OZ.AU (John Max Skaller)
Date: Fri, 25 Feb 1994 19:39:17 GMT
Raw View
Well, its about time we had an FAQ. So now we do.
I will maintain a file for each question, and post them
every so often. I'd appreciate corrections,  and questions,
preferably with answers :-)

My email address is maxtal@suhpys.physics.su.oz.au

---------------------------------------------------------
Q1: What is comp.std.c++ for?

A1: Its for discussion of the ANSI/ISO C++ Language
    Standardisation effort.

    "The C++ committee" consists of two committees meeting jointly:

     WG21 is the ISO Working Group of SC22 responsible for C++,
     SC22 is the ISO SubCommittee responsible for Programming
     Languages. ISO is the International Standards Organisation.

     X3J16 is the working group of the American National Standards
     Institute ANSI, which is the national body that votes
     on SC22 for the USA, and also controls US domestic Standards.

     ANSI sponsored the Work Item which lead to the formation of WG21.

     The ANSI and ISO committees X3J16 and WG21 meet jointly
     three times a year to discuss and vote on motions to change
     the Working Paper which will eventually become both an
     International Standard (IS) and an ANSI Standard.
-------------------------------------------------------------

Q2: What does the ANSI Standard say about the behaviour of
    this program ... ?

A2: It says nothing. Neither does the International Standard.
    There is no ANSI Standard for C++. There is no International
    Standard for C++.

    There is (as at Feb 1994) a document called the Working Paper,
    or WP, which is a draft version of the Standard.

    The WP is not a "Proposed Standard" either. What happens is:

    1) The WP will be registered with SC22 as a Committee Draft,
       or CD.

    2) Participating (P) and Observing (O) Member nations of SC22
       get to comment on the CD: the CD is distributed to them,
       and their comments are distributed to everyone, including
       all the WG21 members.

    3) The C++ committee modifies the CD, and produces a new draft.
       The process repeats until the CD is stable.

   4) The CD is put forward for the first round of voting.
      Its a "Proposed Draft International Standard" at that
      point. If it is accepted, it becomes a "Draft International
      Standard" or DIS.

   5) There is another round of comments and then the DIS goes
      up for vote, after a few small changes, as a Proposed
      International Standard. If it passes, we have an
      International Standard for C++.

   6) Somewhere about this point, ANSI ratifies the IS
      as an ANSI Standard as well: we have two Standards,
      but they say the same thing.


---------------------------------------------------------------------------

Q3: What changes have been made by the committee from the ARM.

A3: Lots. A more complete list will appear here as time goes on.
    The list will CHANGE so do NOT rely on these features.
    For now a few items to start the ball rolling:

 EXTENSIONS

 Templates and Exceptions offical

 add mutable members
 add namespaces
 add qualified function template names f<int>()
 add new style casts
 deprecate implicit int
 add bool type
 covariant returns
 allow declarations in if, while, for, and switch
 RTTI (Run Time Type Information)
 enums are class types
 specialisations must be declared

 CORE

 allow function to return cv qualified rvalues for member calls
 dont distinguish const value parameters
 const means read-only
 enums are a symmetric subrange of an integral type
 nested class members can be declared out of class
 MANY clarifications

 CONFORMANCE

 no hard limits
 modified conformance model

 LIBRARY

 string and wstring class
 dynarray<T> class
 bits<int> class
 bistring class
 improvements to iostreams
 complex classes
 C normative addendum incorporated
 namespaces incorporated
 exception classes

--
        JOHN (MAX) SKALLER,         INTERNET:maxtal@suphys.physics.su.oz.au
 Maxtal Pty Ltd,      CSERVE:10236.1703
        6 MacKay St ASHFIELD,     Mem: SA IT/9/22,SC22/WG21
        NSW 2131, AUSTRALIA