From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,53c7a24d13241b98 X-Google-Attributes: gid103376,public From: "Howard W. LUDWIG" Subject: Re: Standadised OO Language Date: 1998/02/13 Message-ID: <34E48B7B.2A5D@lmco.com> X-Deja-AN: 324820975 Content-Transfer-Encoding: 7bit References: <34E2D3D9.B2F1F398@adelaide.on.net> Mime-Version: 1.0 Reply-To: howard.w.ludwig@lmco.com Content-Type: text/plain; charset=us-ascii Organization: Lockheed Martin Electronics & Missiles Newsgroups: comp.lang.ada Date: 1998-02-13T00:00:00+00:00 List-Id: Jon S Anthony wrote: > > Matthew Daniel writes: > > > After Having a "discussion" with one of the engineers at work, he is an > > Ada "hater" and I am the Ada "lover", about standadised OO languages, I > > said Ada95 was the only one, well at least 6 months ago, he said C++ has > > an ANSI standard and has for a couple of years. > > > > I was just wondering if I was correct or totally wrong. > > Neither. > > C++ definitely has _NOT_ had _any_ standard 6months ago let alone 2 > years ago. The guy is a clueless fool. > > I've heard (a rumor) that within the last couple of months (maybe > December) the latest draft C++ proposal (not the old one that was > laying around for the last 2-3 years) was accepted. I don't know if > this is really true and if so if it is ANSI or ISO. > > OTOH, Common Lisp/CLOS was (AFAIK) the first true standardized OO > language (1994 as opposed to Ada's 1995), though it was ANSI and not > ISO. > > -- > Jon Anthony Perhaps some specific dates and details would help: CLOS (Common Lisp Object System) 1994-12-08 ANSI X3.226:1994 ---------- has not become an ISO standard ISLISP (which I know very little about and haven't kept up with any details, other than it is supposed to be neither a subset nor a superset of CLOS!!!) 1997-??-?? ISO 13816:1997 ---------- has not become an ANSI standard [Thus, Lisp has the dubious distinction of being one of the few languages for which both an ANSI standard and an ISO standard exist but they never have matched nor does there seem to be any attempt to harmonize them.] Ada 1994-11-01 Final ISO draft approved 1995-02-15 ISO/IEC 8652:1995 publication 1995-04-10 ANSI approval for ANSI/ISO/IEC 8652:1995 [Thus, the dates show that CLOS became an ANSI standard after approval of final ISO draft for Ada but before ISO publication. Generally, CLOS is given credit for being first overall, but Ada beat it (and all other OO languages) to ISO approval.] C++ 1997-11-14 Final ISO _Draft_ International Standard DIS 14882 approved unanimously 1998-early Final (hopefully) balloting on final draft 1998-late ISO publication expected ANSI assumedly will follow. [It should be noted that earlier votes on C++ were contentious. Minimum (but with significant impact for compilers) acceptable fixes were made, resulting in a unanimous approval of the final Committee Draft, with several country representatives holding their nose with the attitude that the final version had significant problems but was better than continuing the state of _no_ standard. Based on this, it seems very likely that the remaining steps of ISO standardization will be formalities and, assumedly, ANSI will follow. Compilers will take a while to catch up to the standard and mature, just as they did for Ada.] Regarding the original issue, apparently a debate over whether C++ is at the same level of standardization and maturity as Ada 95: Ada 95 has been a published ISO standard for 3 years now (well, after two more days, actually :), and this version is a revision of a previous ISO standard. Mature compilers from several vendors for several [understatement] platforms are available in a _validated_ form. The validation process for Ada 95 compilers has been growing in rigor, following a transition time of relative laxness from Ada 83 to Ada 95. GNAT, which runs on a wide variety of platforms, implements the full (including all optional annexes) language and passes _all_ relevant validation tests. C++, on the other hand, is going through its first rigorous standardization process. It has achieved only Final _Draft_ International Standard phase, not final approval and publication. Compiler vendors are scrambling to incorporate the new features that have been added or changed over the last two to three years. We can expect it will be 2000 before complete, compliant compilers are available with any degree of maturity (allowing the same two-year interval from completion of settling on a standard to compiler compliance which was the case for Ada and is typical for other languages as well). There is no mechanism in place to assure compliance of compilers to the standard (like Ada validation). Since it is expected that a revision to the C standard will be approved in 1999 or 2000 and C++ has been intricately coupled in structure with C [which is a whole other issue and a can of worms in itself], the C++ folks are already talking about mechanisms for C++ compiler vendors to modify their C++ compilers to handle the revisions to the C standard without adjusting the C++ standard!?#! Wow! What does it mean to have an ISO C++ standard document, then? So much for compilers stabilizing and maturing in 2000, and so long portability! What a deal! Lots of suckers thinking so and grabbing it. Howard W. LUDWIG Working, but not speaking, for Lockheed Martin Electronics & Missiles Co.