Ada 95 was designed and developed by an international process of unprecedented scale for a programming language. A Board of Distinguished Reviewers representing six different countries and comprising 28 world-renowned leaders in academia and industry provided oversight and evaluation of the immense input from the international community of users. Over 750 recommendations were received by individuals who were invited to submit Revision Requests many from the world’s leading companies. Conferences, workshops, small-group meetings and one-on-one consultations were held with various segments of the Ada community, and advice was received from some of the world’s finest software engineers and government technology leaders. The entire revision process required over four years to complete.
The revision is an update of the 1987 International Organization for Standardization (ISO) release and the equivalent 1983 American National Standards Institute (ANSI) Ada standard. Drafts of the revised standard were formally considered by the ISO between September 1993 and October 1994; ballots were cast over a period of 15 months by the 22 member countries, and officially tallied on November 1, 1994.
ISO delegates accepted the revision unanimously and the revised standard reference manual was published 15 February 1995. The ISO approval made Ada 95 the first internationally standardized, fully object oriented programming (OOP) language. Ada 95 also received ANSI approval, following a period of public review and comment., and has been adopted by the National Institute of Standards and Technology (NIST) as a Federal Information Processing Standard (FIPS).
The design of the language revisions, as well as creation of a new reference manual, was completed by Intermetrics, Inc., of Cambridge, MA.
The capabilities of Ada 83 were enhanced for Ada 95 through the definition of a small number of new “building blocks” in three basic areas: object oriented programming, programming in the large, and real-time and parallel programming. In each case, the revision team used existing features as the basis for enhanced capabilities: the derived and universal types were the basis for object-oriented programming features; the existing notion of library units formed the basis for hierarchical name space and program partitioning; and the concepts of private types, functions, procedures, and entries provided the basis for protected record construct, supporting fast mutual exclusion, and asynchronous task communication. The language is fully portable and successfully addresses programming concerns such as the effective integration of legacy systems and upward compatibility, as well as efficient “programming in the large,” the development of very large programs — often over one million lines of code.
This building process ensured that the revision was a natural evolution, one that would increase Ada’s appeal to new users, while maintaining its appeal to existing users. The goal was to enhance the language to support new and more complex system implementations, but not to disrupt its use in existing applications. To achieve this, Ada 95 retains the inherent integrity and efficiency of its predecessor, as the first advanced building block language to assemble a host of important features, while adhering to the demands of modern software engineering practice.
For more information on Ada 95’s new features, consult the the Ada 95
Language Reference Manual and Rationale, or the AdaIC flyer entitled “An Overview of Ada 95.”
Ada 95 continues to receive the strong support of programming experts and software engineering companies across the country and around the world. Talented programmers have begun to write, convert, and upgrade to Ada 95, the logical language of choice for their companies’ large, complex systems. Well-established vendors of Ada 83 tools and services are leading the way in producing viable tools and services for Ada 95, including compilers, bindings, and training courses and tutorials.
“Ada offers commercial developers an ideal blend of consistency, maturity, reliability, and performance. Ada 95 defines a new language standard that is open, accommodating to change and allowing the innovation of top technical talent all while providing the discipline and support for the engineering required in critical software systems,” notes Robert Mathis, Ph.D., executive director of the Ada Resource Association.
“Ada has always strongly supported object-oriented design and analysis. The revision builds on that strength with full support for OOP, along with the maintainability that makes it the most logical choice for safety and business critical applications,” noted the Chief Language Designer, S. Tucker Taft. “The primary reason for choosing Ada is still the bottom line it’s cheaper to build a reliable system in Ada than in any other language.”
Chris Anderson, project manager for Ada 95 and co editor of the revised standard reference manual, added: “No other language has ever been created following written requirements refined by the world’s best in computer programming and software development. Ada 95 is the culmination of these efforts, thereby delivering the most viable, cost effective language for the development of long term software solutions.”
Note: Parts of this flyer are based on an article written by S. Tucker Taft, Ada 95 Mapping/Revision Team.