in 1979, made mandatory for Department of Defense software
projects by the Pentagon. The original language was
standardised as "Ada 83", the latest is "
Ada 95".
primarily at
embedded applications. It has facilities for
reliable run-time error handling. In support of large-scale
case-is-when-end case, loop-exit-end loop, goto. Subprogram
parameters are in, out, or inout. Variables imported from
other packages may be hidden or directly visible. Operators
An Ada program consists of a set of packages encapsulating
data objects and their related operations. A package has a
separately compilable body and interface. Ada permits
Tasks are synchronised by the
rendezvous, in which a task
waits for one of its subroutines to be executed by another.
The conditional entry makes it possible for a task to test
whether an entry is ready. The selective wait waits for
either of two entries or waits for a limited time.
Ada is often criticised, especially for its size and
complexity, and this is attributed to its having been designed
by committee. In fact, both Ada 83 and Ada 95 were designed
by small design teams to be internally consistent and tightly
integrated. By contrast, two possible competitors,
Fortran90 and
C++ have both become products designed by large and
disparate volunteer committees.
scanner and yacc parser is available. E-mail:
["Reference Manual for the Ada Programming Language", ANSI/MIL
STD 1815A, US DoD (Jan 1983)]. Earlier draft versions
appeared in July 1980 and July 1982. ISO 1987.
(2000-08-12)