comp.lang.ada
 help / color / mirror / Atom feed
* Re: Using 'C' for Safety-Critical Applications
       [not found]     ` <59bq1v$287$1@nz12.rz.uni-karlsruhe.de>
@ 1996-12-20  0:00       ` Ken Garlington
  0 siblings, 0 replies; only message in thread
From: Ken Garlington @ 1996-12-20  0:00 UTC (permalink / raw)



ae59@rz.uni-karlsruhe.de wrote:
> 
> I like ADA but, we have a project (safety-critical real-time system for braking)
> where a small subset of C has been selected as development language just
> because of commercial issues - the one and only reasons that really counts in
> an industrial context!.

Since Ada has been used successfully for commercial hard real-time
safety-critical systems, this seems to be a silly reason.

You might want to check out what your competitors are finding out. See:

  http://sw-eng.falls-church.va.us/AdaIC/projects/index.shtml#successes

> 
> Those are :
>  o expensive runtime license of ADA compilers is an important cost constraint
>    for embedded application. Our application work in a very lean environment.
>    Most parts of the ADA runtime has been thrown away but not all. The license
>    has to be paid per running piece. Therefore the price per piece has been
>    enormously increased using ADA.

Not all Ada compilers have such a pricing structure. We don't pay a
per-use price for
ours. Do a little comparison shopping and see if you can't get a better
deal!

>  o runtime efficiency in size (must find place in eeproms), performance
>    (hard real-time application)

I have a hard real-time safety-critical application running in a small
EEPROM space,
so this is also easily disproven. See also the Tartan comparison of Ada
and C
performance for TI DSPs.

>  o more or less the C subset left over is a replacement of Assembler, but is
>    sufficient to meet portability, structure, testing and certification goals

Why is this an argument against using Ada? Certainly, you can create the
a reasonable
Ada subsset as well.

If you already have working "C" code, and you're happy with it, then use
it. If
you're starting a new project, sounds like an excellent place to use
Ada.

> 
> Remark:
>  Complexity of the sources, application running certain microcontrollers:
>   ~4800 lines of C code
>   ~2500 lines of assembler
>   No external libraries are allowed.
> 
>  The type and the complexity of the safety critical application is probably
>  decisive for the selection of the programming language. Maybe C
>  development costs might be higher (probably during certification). But the
>  question is : are you cheaper than your competitor?

You might also be interested in:

  http://sw-eng.falls-church.va.us/AdaIC/docs/reports/cada/cada_art.html

>  In our case, the first implementation of the system has been done in ADA -
>  THEN in C.

Seems strange to me.

If you've already made up your mind to use "C", are you just looking for
someone
to confirm what you've already decided?

> 
> Kind regards
> Heiner
> 
> ------------- URL http://www.uni-karlsruhe.de/~ae59 ---------------------
> Heinrich Berlejung                       |Institut f. Angewandte Mathematik
> Tel.:+49 721 377936 / Fax:+49 721 385979 |P.O. Box 6980,D-76128 Karlsruhe
> Mail:Heiner.Berlejung@math.uni-karlsruhe.de|Universitaet Karlsruhe (TH)

--
LMTAS - The Fighter Enterprise - "Our Brand Means Quality"
For job listings, other info: http://www.lmtas.com or
http://www.lmco.com




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1996-12-20  0:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <850946828.7859.0@battery.demon.co.uk>
     [not found] ` <32B8ADF8.4F39@zip.com.au>
     [not found]   ` <32B8DF3E.2F8E@ghgcorp.com>
     [not found]     ` <59bq1v$287$1@nz12.rz.uni-karlsruhe.de>
1996-12-20  0:00       ` Using 'C' for Safety-Critical Applications Ken Garlington

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox