History of Ada and Ada 95

       The United States Department of Defense initiated a project to obtain a suitable programming language for the development of embedded systems.  They surveyed all existing languages available in the early 1970s and none of them were suitable.  In 1977, an international competition was initiated among four contractors to design a language primarily for embedded systems.  A winning design was chosen in 1979.  The resulting language was called Ada, after Ada Augusta Byron, the Countess of Lovelace and daughter of Lord Byron.  It is said that her collaboration with Charles Babbage on the analytical engine originated some of the key ideas that lead to programming.
 

        Ada is based primarily on Pascal, but uses the class concept of Simula 67 in its abstract data typing called a package.  Exception handling features were adopted from PL/I and provides an extensive tasking facility for concurrent processing.
 

        In 1983, Ada was standardized.  Every compiler that aspired to be called an Ada compiler had to be validated by the Department of Defense.  Subsets and supersets of the language were not authorized until there was a push to make languages object-oriented.  The Department of Defense has dropped ownership of the Ada trademark.  They continued to validate compilers and give out pentagon shaped validation certification stickers until October 1998.  In 1995, an object-oriented version of Ada was standardized.  Ada 95 does not have a sense of classes, but does support inheritance and dynamic binding for record types.
 

        Ada 95 was the first internationally standardized object-oriented language.  It is also possible that Ada 95 has the following firsts:

1.  First language to have an official validation suite, keyed closely to the standard.
2.  First language to be standardized by the canvas method instead of by an x3 committee.
3.  First language for which a formal design included the publication of requirements documents.
 

Go to Genericity or the Table of Contents