Ada

In the early 1970s the US Department of Defence (probably the largest user of computers in the world), conducted a study into the cost of developing and maintaining programs. During this study it emerged that over 450 languages were in use to develop software for the department. As a result of this study (and in response to the software crisis) the department set up a working group (c1975) to identify a single programming language that would meet all the department's software needs. The aim was standardise on a single language, particularly with respect to real-time embedded systems. However, no existing language met the desired requirements. Consequently, to further its ends the Department organised an international design competition to develop a programming language that would meet the requirements. This was won by a group from CII-Honeywell Bull of France headed by Jean Ichbiah. Ichbiah's language was called "Green", however, the resulting language was called Ada after Ada, Countess of Lovelace, who worked on Babbage's Analytical Engine and is considered by many to be the first programmer.

The language itself is Pascal based, although it is a much larger and complex language than Pascal. One of the key features of Ada is the package (this was not a feature of Pascal). A further key feature is the reduction in debugging time that Ada provides. Ada tries to catch as many errors as reasonably possible, as early as possible. Many errors are caught at compile-time by Ada that are not caught or are caught much later by other computer languages. Ada programs also catch many errors at run-time if they can not be caught at compile-time (this checking can be turned off to improve performance if desired). In addition, Ada includes a problem (exception) handling mechanism so that these problems can be dealt with at run-time.

Ada was originally standardised by ANSI in 1983 (ISO released an equivalent standard in 1987). Ada was recently revised to add some new capabilities (by a small team led by Tucker Taft); this revision is called `Ada 9X' or `Ada 95'.

Ada continues to receive support from the US Department of Defence, and as long as this continues its wide usage will be assured. There is U.S. legislation mandating Ada's use in Department of Defence software development projects (with various exceptions and waiver provisions). The strongest criticism of the language is Tony Hoare's ACM Turing Lecture entitled "The Emperor's Old Clothes" (Hoare 1981), in which he suggests that Ada is far too big and complex. The designers of Ada have subsequently retorted with a statement to the effect that real world problems are big and complex!

References

  1. Hoare, C.A.R. (1981). The Emperor's Old Clothes. Communications of The ACM, Vol 24, pp75-83.



Created and maintained by Frans Coenen. Last updated 03 July 2001