Re: "dselect" replacement team
On 14 Apr 1997, Mark Eichin wrote:
>
> >> C++'s basic things have been unchaged for what, 6-7 years now?
>
> *snicker* *snort* *splutter* *wipe, wipe, the tea off the keyboard*
>
> Sorry about that, it's not aimed at you, just at the idea that C++ is
> even vaguely "solid" on that kind of time scale. But, well, 5 years
> ago C++ didn't even *have* templates. (I know -- Ken Raeburn and I
> were still exchanging email with people at AT&T on the design, and
> subcontracting to Cygnus on the implementation.)
Okay, templates are newer, but I don't really include them in the basic
things :> As far as that goes, I have done alot of work with commercial
C++ compilers in Os/2 + QNX + Dos, and let me say that across the compiles
there is a pretty uniform implementation of C++, yes there are some bumps
in some obscure things but nothing fatal. Today, I can write C++ code with
templates, exceptions and RTTI and be reasonably confident that my code
will compile on at least 4 commercial compilers. If I actuall test with
those 4 compiles I will have code that compiles on them all, without
that much trouble.
> 4 years ago, G++ didn't have *nested types* working; since Cfront 1.0
> didn't even have the concept, this was fair -- it was introduced in
> Cfront 2.x, and G++ needed a fair bit of internal change to deal (with
> not keeping a global type list, in more subtle ways than seemed
> possible at the time :-) I know it was 4 years ago because I'd been
> hired by Cygnus at the time, and it was one of my first couple of
> projects (which started out as "there are some bugs in nested types"
> and exploded from there :-)
G++ seems to be just *nasty* with respect to C++, I don't know why it
lags so far behind or has so many unfixed problems and so on, maybe 2.8
will fix them maybe it won't, I do not know.
Let me tell you that I ported Muse, a 37K Line C++ program from Os/2 to
LinuxG++ in about a day, my code didn't uncover too many compiler bugs.
That makes Muse a program that compiles on:
G++
High C++
IBM VAC++
Borland C++
Watcom C++
That I have tried. It uses templates all over the place, no exceptions or
RTTI. I also do not have much in the way of compiler specific ifdefs, the
most major is to #define min/max using >? and _max for G++ and HC.
> Even now there are lots of "corners" of templates that simply don't
> work, even if you stick with G++. (Don't even *start* to consider C++
> as a language from multiple vendors...)
>
> And the upcoming (what, 6 months worth of voting left, last I
> checked?) ISO/ANSI C++ standards are adding *new keywords* like "use"
> which are going to break existing code merely by existing :-) Lots
This is part of the namespace stuff if I recall. I used a compiler which
supported this 12 months ago, High C++.
Jason
Reply to: