Information Technology - Programming Languages - Ada

Designation Number:
ISO/IEC 8652
Standard Type:
National Standard of Canada - Domestic
Standard Development Activity:
New Edition
Status:
Proceeding to development
SDO Comment Period Start Date:
SDO Comment Period End Date:
Posted On:

Scope:

Scope

1.1 Scope

This International Standard specifies the form and meaning of programs written in Ada. Its purpose is

to promote the portability of Ada programs to a variety of computing systems.

Ada is a programming language designed to support the construction of long-lived, highly reliable

software systems. The language includes facilities to define packages of related types, objects, and

operations. The packages may be parameterized and the types may be extended to support the

construction of libraries of reusable, adaptable software components. The operations may be

implemented as subprograms using conventional sequential control structures, or as entries that

include synchronization of concurrent threads of control as part of their invocation. Ada supports

object-oriented programming by providing classes and interfaces, inheritance, polymorphism of

variables and methods, and generic units. The language treats modularity in the physical sense as

well, with a facility to support separate compilation.

The language provides rich support for real-time, concurrent programming, and includes facilities for

multicore and multiprocessor programming. Errors can be signaled as exceptions and handled

explicitly. The language also covers systems programming; this requires precise control over the

representation of data and access to system-dependent properties. Finally, a predefined environment

of standard packages is provided, including facilities for, among others, input-output, string

manipulation, numeric elementary functions, and random number generation, and definition and use

of containers.

1.1.1 Extent

This International Standard specifies:

• The form of a program written in Ada;

• The effect of translating and executing such a program;

• The manner in which program units may be combined to form Ada programs;

• The language-defined library units that a conforming implementation is required to supply;

• The permissible variations within the standard, and the manner in which they are to be

documented;

• Those violations of the standard that a conforming implementation is required to detect, and

the effect of attempting to translate or execute a program containing such violations;

• Those violations of the standard that a conforming implementation is not required to detect.

This International Standard does not specify:

• The means whereby a program written in Ada is transformed into object code executable by a

processor;

• The means whereby translation or execution of programs is invoked and the executing units

are controlled;

• The size or speed of the object code, or the relative execution speed of different language

constructs;

• The form or contents of any listings produced by implementations; in particular, the form or

contents of error or warning messages;

• The effect of unspecified execution.

• The size of a program or program unit that will exceed the capacity of a particular conforming

implementation.

Note: The information provided above was obtained by the Standards Council of Canada (SCC) and is provided as part of a centralized, transparent notification system for new standards development. The system allows SCC-accredited Standards Development Organizations (SDOs), and members of the public, to be informed of new work in Canadian standards development, and allows SCC-accredited SDOs to identify and resolve potential duplication of standards and effort.

Individual SDOs are responsible for the content and accuracy of the information presented here. The text is presented in the language in which it was provided to SCC.