Techknow Study

The Ada Programming Language

8:48:00 PM vikas 0 Comments Category :



The Ada language is the result of the most extensive and most expensive language design effort ever undertaken. Up until 1974 half of the applications at The Department of Defense were embedded systems. An embedded system is one where the computer hardware is embedded in the device it controls. More than 450 programming languages were used to implement different DoD projects, and none of them were standardized. Because of this, software was rarely reused. For these reasons, the Army, Navy, and Air Force proposed to develop a high-level language for embedded systems.
By 1977, a complete language design specification for Ada was created. In April 1977, four proposing contractors were chosen to produce Phase I of the language design. In February 1977, Phase I of the language design was complete. Following this, was a two month evaluation period where 400 volunteers in 80 teams chose two out of the four as being the best language designs. These two companies were then given the go ahead to produce Phase II of the project. At the end of Phase II, another two month evaluation period took place. In May of 1979 the Cii Honeywell/Bull (the only foreign contractor) language design was chosen as the winner. Phase III of the project began after the winner was selected. After a winner was selected, the language design was published by the ACM. In November 1979, over 500 language reports were received from 15 different countries. Most of the reports suggested minor changes in the design, none real drastic. Based on these suggestions, a revised language design was published in February of 1980. After some minor changes to this document over the next few years, the final official version of the language was settled upon. The Ada language was then frozen for the next five years.

Significant Language Features

  • Packages - Data types, data objects, and procedure specifications can be encapsulated into a package. This supports the program design of data abstraction.
  • Exception Handling - Ada has very good exception handling capabilities which allow the program to handle its own run-time errors.
  • Generic Program Units - It is possible to write a procedure (for example, a sorting procedure) which does not require a data type to be specified.
  • Parallel / Concurrent Processing - Ada supports parallel and concurrent execution of tasks.
  • Ada 95 Will Add -
    • Support for object-oriented programming
    • More flexible libraries
    • Better control mechanisms for shared data

Areas of Application

  • Government (Department of Defense)
  • Banking systems
  • Commercial aviation
  • Communications systems
  • Computer-Aided Design
  • Manufacturing