On Saturday, April 27, 2002, at 07:59 AM, Jon Berndt wrote:

>> Norman Vine wrote:
>>
>> Jonathan Polley writes:
>>>
>>> The biggest problem I see with C++ and the FAA is that it is VERY hard
> to
>>> guarantee that C++ will not do any dynamic memory allocation.
>>
>> Agreed --  this is the 'crux' of the issue for long running 'critical'
>> software.
>> AFAIK most of this kind of software when written in 'C' will only use
>> statically defined 'space'.
>
> The problem I see with Ada is manpower. In this area (near Johnson Space
> Center) I saw some projects that were supposed to be done solely in Ada
> erode the boundaries of what was acceptable to do in C simply because
> "there just aren't any Ada programmers". In the mid-nineties I was one
> member of a team of system administrators that supported the Space Station
> Training Facility as it was being built up - that was done almost entirely
> in Ada. People talked about Ada as if it was going to replace C for
> general military/space use. That has gradually subsided here and now I
> don't hear anyone talking about it. That certainly doesn't mean it isn't
> being used here, but it leads me to wonder why this language has not taken
> over the way people said it would.
>

Just like all new languages, Ada was suppose to solve all of our problems.
   Ada is great for embedded, safety critical, systems.  Unfortunately, it 
pretty much stinks for everything else (it has the worst I/O of any 
language I have seen).  On my simulation environment, we only use Ada 
where can steal code from out embedded programs and everything else is in 
C.  C gives us the I/O capabilities (X, OpenGL, sockets, etc.) in a 
portable manner (nothing is worse than being "held hostage" by a vendor of 
a binding to a C interface).  The bulk of the Ada code that we run is the 
actual embedded flight software that we have recompiled for our 
workstations.  This, BTW, is where Ada really shines, just don't do I/O.

> I see C used in some important current projects locally:
>
> - X-38 flight software
> - X-38 avionics testbed simulation software (with legacy fortran code
> included)
> - Space Shuttle Engineering Simulator II, written in C.
>
> I began writing JSBSim in C++ some years ago because it seemed to lend
> itself well to the structure of flight dynamics modeling. I think it's
> worked out well, and I can't imaging what it would look like if written in
> C. Sure, we can get ourselves in trouble if not careful, but it seems to
> work pretty well and it's been loads of fun.
>

Inheritance is our friend ).  Because of Ada's embedded nature, even 
Ada-95 does not do that well.  Having an exception propagation mechanism 
(another of Ada's strengths) is also a Very Good Thing and it is nice to 
see modern languages supporting it.  My eventual goal is to use something 
like JSBSim to do our simulated flight testing.  As I said in the earlier 
post, the verification requirements for simulation and test code are very 
different from the certification requirements of flight code, thank 
heavens.

> Jon
>
Jonathan Polley

<language bigot mode>
Due to some problems we have had with Ada's generics, I am not a fan of 
templates.
</language bigot mode>


_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to