At 11:08 AM 1/14/99 -0500, Wesley Groleau forwarded a message
for comments and reply.
Tucker Taft has answered most of the points, so I've cut down
my comments. Deleted text is indicated by ellipses (...)
>> My experience with Ada is that the compilers, support libraries,
>> and tools will always lag behind what is available for c,
>> especially in the Unix environment. ...
I suspect author's experience with Ada, if any, is with Ada 83.
Ada 83 did have problems interfacing with C libraries, but these
problems were identified and solved by Ada 95.
>> And, it will be necessary to use assembly language with Ada in time-
>> critical areas. Performance requirements will more easily be
>> met using c since c compilers generate more compact code, and
>> the programmer has more control over the resultant machine code
>> that is generated. ...
I don't know how this misconception survives.
We have found that Ada and C have comparable execution speed.
But the comment about control code reminded me of a problem we had
3 years ago and how Ada solved it. The program (track_classifier)
was written in C; but the C compiler optimizer would optimize out
some desired behavior. Consequently, the optimization flag was
turned off for this program. (I know programmers who actually think
they can write tighter C code without the optimizer turned on.)
We recoded the program in Ada, used rep clauses to ensure correct
data representation, and achieved a 2.5X performance improvement.
As best as we can tell, about 2.1X of the improvement is due to
the optimizer. The additional 20% improvement was incidental to
re-coding in Ada. No explicit redesign was performed, but some
data structures are made "Ada friendly".
>> Third, although in this business we have a some people who have
>> familiarity with Ada, the rest of the programming world is using c.
>> It will be easier to find people with the requisite programming
>> skills if we use c, and to interest them in working on the project.
>> Programmers will always prefer c to Ada.
That's funny. Most of my staff would like to quit using Ada, C, and
C++ to hop onto the Java bandwagon.
Joseph P Vlietstra [log in to unmask]
Aerojet Electronic Systems [log in to unmask]
1100 West Hollyvale Street (626) 812-2865
Azusa, CA 91702