Mon, 12 Jul 2004 22:20:09 -0500
|
I can speak for the cost and benefit of "C" and "C++" compilers vs Ada
compilers.
I have worked on projects that use Ada, and ones that use C & C++.
On those projects, we used C/C++ compilers from Sun and from Microsoft.
We found bugs in the compilers and run-times in both cases.
In the case of sun:
Typically it took a month to get our problem "bundled up" to a form where
it was reproducible, and send to sun support.
The errors we reported were acknowledged.
It usually took about 3 months to get a dot-release or 'patch' for the
compiler
or runtime.
One I particularly remember had to do with the dispatching of sun's
dynamic linker
when a thread requested a dynamic link.
It took us almost 8 months to get a fix. But we got a fix eventually.
Then we had to convince our customer to put that particular version of
that particular
fix on their systems. [Both earlier and later ones did not work. Also,
the one
that worked for our C++ problem broke lots of other C++ programs doing
threading]
In the case of Microsoft:
Of all the C and C++ bugs I have reported to Microsoft since 1989 (about
a dozen),
I have *never* gotten a fix that worked. In most cases, they never sent
anything
[I was not a paying-for-support customer, and got ignored.]
In the cases where I was working for a company that was paying for
support, we usually
got a "fix" in several months. However, the fix we got never fixed the
problem.
An example problem was an error in concurrency in the C++ library that
meant that
multiple threads all making calls on DB interface routines to SQL-Server
did, when
heavy load was placed on the system, wind up passing the arguments given
in one
thread to a DB routine acting for a different thread.
I have not had an concurrency problem with any Ada compiler from Any
manufacturer
since the ones in the 1983-85 time-frame, when Ada and Ada compilers were
new.
By-the-way:
Ada's solid types, and items such as discrimated records (since 1983)
give me the
ability to control the data in my programs to a degree to even envisionable
with C/C++/C#.
Most of my data problems are gone by the time I get a clean compile in Ada.
In C and C++, I'm still finding data correctness issues in the programs
after they've
bee in the custoemer's shop 3+ years!
Just one person's experience with concurrency and programming languages and
the compilers and run-time support.
...Paul Stachour
[log in to unmask]
952-884-5977
P.S. The first Java program I wrote got wrong answers because the Java
dynamic linker
didn't get the right subroutine to call. While I have no recent experience
personally, a
friend who uses Java regularly and religiously says it is not hard to trick
the dynamic
linker into getting the wrong routine if you know how to go about it. And
that it can
happen accidentally.
----- Original Message -----
From: "Stephen Leake" <[log in to unmask]>
To: <[log in to unmask]>
Sent: Monday, July 12, 2004 7:52 AM
Subject: Re: Advocacy Needed
> Toshitaka Kumano <[log in to unmask]> writes:
>
> How good is the support for the C++ compiler? I don't know; I've never
> paid for it.
>
> On a reasonably sized project, the cost of ACT support for Gnu Ada is
> small. Hmm. Perhaps that just serves to define my notion of
> "reasonable" :).
>
> > Zipper cannot be optional :-)
>
> Well, I have buttons on my shirt :).
>
> --
> -- Stephe
|
|
|