Re: Why don't large companies use Ada?

From: Jules <csusb_at_csv.warwick.ac.uk>
Date: 19 Nov 1994 18:43:14 -0000
Message-ID: <3alh02$rgo_at_holly.csv.warwick.ac.uk>


In article <Cz9H4I.5HK_at_ois.com>,

        beckwb_at_ois.com (R. William Beckwith) writes:
>Jamie Jamison (niteowl_at_u.washington.edu) wrote:
>: I am taking an introductory computer science class at the UW and
>: we are learning the Ada language. So far it's pretty nice. The language
>: seems to lend itself to easy readability, the fact that the language is
>: case insensitive is also a nice factor and the language is incredibly
>: powerful. We're in the second quarter of this class and we're already
>: writing ADT's and generic functions. Ada seems to be pretty neat, strong
>: typing, bounds checking and generic functions are all nice language
>: features, and from what I've seen Ada is a lot better than C.
>
>Yes, Ada is a wonderful language.
>
>: So why is
>: it that the real world, such as it is, programs in C. Sure, C compilers
>: are cheaper, but it seems to me that the labor that you put into writing
>: and maintaining the programs is the real cost, and I know that, at least
>: for me, writing something in C takes a lot longer than writing something
>: in Ada. So why hasn't Ada caught on? Why aren't people developing
>: applications for it?

[deletions]

>IMHO, the structural factors include (in order):
>
> 1. operating systems and windowing software were written in C
>
> MS-Windows and X/Xt/Motif are written in C. Thus, it was
> easier to write software in C the environment. In addition,
> Ada 83's built in multi-threading wreaked havoc on the
> non-reentrant O/S and windowing software.

I have not personally programmed Ada, although I know a little about it. I would however strongly disagree that it is easier to write MS-Windows software (I don't know about X as I haven't started programming it yet, only using it so far) with C. I personally use Turbo Pascal (a language which I believe has many features in common with Ada) to write Windows programs, and find it much easier than using C for the following reasons:

  1. Pascal's strong typing is very useful when dealing with the multitude of structures and other data-types associated with a windows program.
  2. Pascal's handling of pointers is much easier to understand and more natural to use than C's. This is the main place where Pascal wins out over C, by exchanging the flexibility of C's pointer arithmetic for ease of use.
  3. Turbo Pascal's object oriented extensions are much easier to use than C++ - due to the lack of flexibility there is much less to think about when creating objects - no access rights to worry about, no multiple inheritance to confuse the issue, and so on. It really is much easier. This makes using object libraries such as Borland's ObjectWindows much easier to use than equivalent libraries in C++, where the extra flexibility of C++'s classes is not needed.

> The O/S's and windowing systems are finally catching up
> to Ada's multi-threading capabilities. In addition,
> Ada 9X's improved non-Ada interfacing features and the
> advent of Fresco for Ada 9X Win NT and X11R6 windowing
> software and CORBA for Ada 9X should remove these problems.
>
> 2. high price of Ada compilers compared to C/C++/BASIC products
>
> I agree with your assessment of the real cost of software,
> but most companies must realize their return on investment
> in the first year or two to get project funding. Thus,
> they won't pay four times the price of a C++ compiler for
> an Ada compiler.
>
> Fortunately, Ada compiler vendors are pricing their new
> Ada 9X products competitively with C++ products. In
> addition, the free GNAT compiler allows one to learn the
> language without any up front cost.
>
> 3. lack of flexibility in the first version of Ada (Ada 83)
>
> The lack of program pointers, polymorphism, and inheritance
> precluded the introduction of extensible tools in Ada 83.
> Ada 83 was designed for ultimate reliability and
> maintainability only.
>
> Ada 9X adds incredible flexibility. Thus, Ada 9X addresses
> these requirements and much, much more.
>
>None of these reasons exist anymore. Let's see how large
>corporations react in the next couple of years.

May I add that I am eagerly anticipating the coming of Ada into my life. It must be better than the Pascal they're making us poor first years use, I thought this language was supposed to be easy to learn. WITHOUT ANY STRING OPERATIONS BUILT IN? Why?

-- 
/* Julian R Hall				csusb_at_csv.warwick.ac.uk
   
   Flames should be redirected to /dev/null - I don't know what
   I'm saying myself so don't expect it to make sense all the time!         */
Received on Sat Nov 19 1994 - 19:43:14 CET

Original text of this message