Topic: ANSI Standard state of exception handling, templates?
Author: kevlin@wslint.demon.co.uk (Kevlin Henney)
Date: Thu, 12 Jan 1995 13:18:30 +0000 Raw View
In article <1995Jan10.171635.24813@atn4.uucp> eric@atn1 "Eric Lemings" writes:
>Fergus Henderson (fjh@munta.cs.mu.OZ.AU) wrote:
>: Templates and exceptions are absolutely definitely going to be
>: in the eventual ANSI/ISO C++ standard. However, we do not yet have
>: a C++ standard, and even once the standard is finalized, it may well be many
>: years before you can find a conforming C++ implementation on all platforms.
>
>Why is this so? Could it be that the Standard is so different from current
>implementations that it will take so long to make them ANSI/ISO conformant?
>Otherwise, I would think that current vendors would be following the Draft
>so closely that they would be able to stamp "ANSI/ISO C++" across the their
>C++ compiler packages as soon as the Standard is finalized.
A couple of reasons, really. The standard is not just a long list of
'groovy features' for compiler writers to implement. There are a number of
subtle points that need interpreting by both compiler writers and the
committee (one that springs to mind at the moment is the interaction of
anonymous namespaces with friends and the 'one definition rule'). As such,
any given implementation of C++ is likely to converge asymptotically on
the standard. There is also the question of validation suites.
Then there are companies like Microsoft [tho' hopefully not too many ;-)]
who seem to be incapable of tracking the standard closely. The reasons they
gave for not including templates and exceptions a couple of years back
roughly came across as 'we don't know how to do this efficiently', which
is a smokescreen for 'we don't know how' :->. Now they have these (for a
limited range of platforms, ie. NT 3.5), everyone else has moved on. As
long as companies adopt this kind of arrogant attitude, don't wait up
for ISO conformance as the norm.
Regards.
+---------------------------+-------------------------------------------+
| Kevlin A P Henney | Human vs Machine Intelligence: |
| kevlin@wslint.demon.co.uk | Humans can wreck a nice beach more easily |
| Westinghouse Systems Ltd | |
+---------------------------+-------------------------------------------+
Author: fjh@munta.cs.mu.OZ.AU (Fergus Henderson)
Date: Mon, 9 Jan 1995 16:45:28 GMT Raw View
dtj@Primenet.Com (Derek Jones) writes:
>I want to use a lot of C++ in the enhancement, but it is going to be
>very important to me to NOT depend on any vaporware or vendor extensions
>to the current or evolving ANSI C++ standard.
>
>The latest ANSI Base Document for C++ that I have still lists templates
>and exception handling as "experimental", which distresses me in light
>of their extreme usefulness.
>
>Where do I go to find out how the ANSI standard is emerging?
Asking in comp.std.c++ is probably as good a place as any.
Templates and exceptions are absolutely definitely going to be
in the eventual ANSI/ISO C++ standard. However, we do not yet have
a C++ standard, and even once the standard is finalized, it may well be many
years before you can find a conforming C++ implementation on all platforms.
Some aspects of these features are certainly vaporware; for example,
member function templates are part of the current C++ Working Draft, but
as yet no compiler has implemented them (at least, not as far as I know).
>Let me know by email (dtj@rincon.primenet.com) or point me to a FAQ or
>the correct conference if this is not it.
--
Fergus Henderson - fjh@munta.cs.mu.oz.au
all [L] (programming_language(L), L \= "Mercury") => better("Mercury", L) ;-)