 






     Software
     Product
     Description

     ________________________________________________________________

     PRODUCT NAME:  VAX Ada Version 2.2                  SPD 26.60.10

     DESCRIPTION

     VAX Ada is Digital Equipment Corporation's validated implementa-
     tion of the full ANSI/MIL-STD-1815A-1983 Ada Language. The VAX
     Ada compiler runs under the VMS Operating System and generates
     optimized, shareable, and position-independent code.

     As a native mode VMS language, VAX Ada is integrated into the
     VMS common language environment. All VMS system services and
     utilities are thus available to programs written in VAX Ada. VAX
     Ada supports the VAX Record Management Services (RMS) sequen-
     tial, relative, and indexed file organizations and associated
     access methods. VAX Ada programs can invoke modules written in
     other VMS languages. Additionally, programs written in other
     languages can invoke VAX Ada modules.

     Ada is a powerful, general-purpose language that supports many
     modern programming practices. The language was designed as
     the result of a competition sponsored by the United States
     Department of Defense. The purpose of the competition was to
     define a language suitable for programming embedded computer
     systems. Among the requirements for the language were features
     that would reduce software costs by increasing maintainability,
     evolvability, reliability, and portability.

     Ada meets these requirements by providing a modular structure
     for programs and allowing separate compilation of program units,
     as well as providing strong typing, exception handling, standard
     language features that must be supported across implementations.
     Ada provides a number of other features that make it suitable

                                  DIGITAL               February 1991

                                                          AE-EU91K-TE

 


     VAX Ada Version 2.2                                 SPD 26.60.10



     for a variety of applications including general systems and com-
     putational applications. Because it includes language features
     that support multitasking, Ada is particularly well suited for
     real-time applications.

     Ada Language Features

     o  Strong typing - An object (variable) of a given type may
        take on only those values that are appropriate to that type,
        and only certain predefined operations may be performed to
        data of that type. Because type checking is done at compile
        time, strong typing ensures that any errors associated with
        incorrect data types are detected at compile time.

     o  Data Abstraction - Also known as information hiding, data ab-
        straction hides implementation details while providing users
        with mechanisms for using the implementation. Abstraction
        allows the user to focus on important characteristics while
        ignoring underlying details. Ada provides various levels of
        abstraction through features such as private data types and
        packages.

     o  Concurrent Processing - For many applications, it is impor-
        tant that a program be conceived of as a number of parallel,
        rather than serial, activities. Most high-order languages
        provide little or no support for handling such parallel or
        concurrent activities; they rely on facilities of the host
        operating system. Ada uses tasks to allow parallel activities
        to be programmed directly within the language.

     o  Separate compilation - Ada's separate compilation feature al-
        lows a programmer to divide a large program into compilation
        units that may be compiled at different times. When a unit is
        compiled, the Ada program library manager records information
        about that unit and other related units. This feature is un-
        like separate compilation features in other languages, where
        very little information about separately compiled modules is
        maintained.

                                     2

 


     VAX Ada Version 2.2                                 SPD 26.60.10



     o  Generic Definitions - A generic unit is a template from which
        specific instances can be made at compile time. In many
        cases, the logic of an algorithm or a set of operations
        is independent of the specific type of the values being
        manipulated. However, in a strongly typed language such
        as Ada, all types must be defined at compile time. Generic
        definitions allow the user to define a general algorithm
        or set of related operations, and then create a specific
        instance of that algorithm or set of operations for each type
        to which the algorithm or operations must apply.

     o  Exception Handling - In many operations, especially embedded
        computer systems, it is critical that a system be able to
        recover quickly and efficiently from error conditions. Ada
        provides the ability to raise and handle exceptions. It
        includes predefined exceptions and also permits the user
        to define exceptions. When an exception occurs in an Ada
        program, normal processing is abandoned and control passes to
        the exception handler.

     VAX Ada Components and Special System-Related Features:

     o  An Ada compiler fully conforming to ANSI/MIL-STD-1815A-1983
        ("Reference Manual for the Ada Programming Language") and
        validated by the Ada Joint Program Office.

     o  An Ada program library manager that provides support for
        programming teams through:

        -  Program libraries that can be shared by many programmers

        -  Program sublibraries that can be used to isolate, de-
           velop, and test Ada units in the context of parent program
           libraries

        -  Automatic recompilation of obsolete compilation units

        -  The ability to share compiled Ada code either by reference
           or copy

     o  High-level, fully symbolic debugging capability through the
        VMS debugger, including support for:

                                     3

 


     VAX Ada Version 2.2                                 SPD 26.60.10



        -  Mixed Ada and non-Ada code

        -  Packages

        -  Tasking programs

     o  Integration with VMS Operating System including:

        -  Conformance to the VAX Calling Standard, which allows
           Ada code to call and be called by code written in other
           languages, as well as to call VMS system services and the
           VMS run-time library

        -  The ability to call VAX Record Management Services (RMS)
           routines directly

        -  Full access to relative and indexed file capabilities

        -  The ability to handle exceptions from non-Ada code and
           generate exceptions to be handled by non-Ada code

        -  The ability to handle VMS asynchronous system traps (ASTs)

        -  The ability to link with shared images and use shared
           global sections

        -  The ability to share data with non-Ada code through global
           variables and psects (common blocks)

     o  System-dependent facilities - Different systems vary in such
        characteristics as the size of storage units, memory size,
        and the smallest and largest integer values supported. Ada
        provides the predefined package SYSTEM to define system-
        related constants and to represent system-dependent informa-
        tion.

     o  Ada also provides representation clauses, which allow the
        user to tailor the representation of data to suit a particu-
        lar system.

     o  VAX Ada provides:

        -  Length clauses, which specify the amount of storage asso-
           ciated with a type.

                                     4

 


     VAX Ada Version 2.2                                 SPD 26.60.10



        -  Enumeration representation clauses, which specify the
           internal codes for the literals of enumeration types.

        -  Record representation clauses, which specify the layout of
           a record type, such as the order, position, and size of
           record components.

        -  Address clauses, which specify required addresses in
           storage for particular entities (in VAX Ada, only for
           constants and variables).

     o  VAX Ada provides a number of pragmas (compiler directives)
        that allow various system-related parameters to be set and
        changed, control mixed-language programming.

     o  Comprehensive diagnostic messages, including automatic syntax
        error correction, directed at helping the new Ada user.

     HARDWARE REQUIREMENTS

     VAX, MicroVAX, VAXstation or VAXserver configuration as speci-
     fied in the System Support Addendum (SSA 26.60.10-x).

     SOFTWARE REQUIREMENTS*

     For Systems Using Terminals: (No DECwindows interface)

     o  VMS Operating System

     For Workstations Running VWS:

     o  VMS Operating System

     o  VMS Workstation Software

     For Workstations Running DECwindows:

     o  VMS Operating System (and necessary components of VMS DECwin-
        dows)

                                     5

 


     VAX Ada Version 2.2                                 SPD 26.60.10



     VAX Ada supports a DECwindows compiler interface for compile
     qualifier selection on workstations. This interface is accessi-
     ble from FileView.

     *  Refer to the System Support Addendum (SSA 26.60.10-x) for
        availability and required versions of prerequisite/optional
        software and for information regarding components of VMS
        DECwindows.

     ORDERING INFORMATION

     Software Licenses: QL-056A*-**
     Software Media: QA-056A*-**
     Software Documentation: QA-056AA-GZ
     Software Product Services: QT-056A*-**

     *  Denotes variant fields. For additional information on avail-
        able licenses, services and media, refer to the appropriate
        price book.

     SOFTWARE LICENSING

     This software is furnished under the licensing provisions of
     Digital Equipment Corporation's Standard Terms and Conditions.

     For more information about Digital's licensing terms and poli-
     cies, contact your local Digital office.

     LICENSE MANAGEMENT FACILITY SUPPORT

     This layered product supports the VMS License Management Fa-
     cility. License units for this product are allocated on a
     CPU-capacity basis.

     For more information on the License Management Facility, refer
     to the VMS Operating System Product Description (25.01.xx) or
     the VMS Operating System documentation set.


                                     6

 


     VAX Ada Version 2.2                                 SPD 26.60.10



     For more information on Digital's licensing policies, contact
     your local Digital office.


     SOFTWARE PRODUCT SERVICES

     A variety of service options are available. For more information
     contact your local Digital office.

     SOFTWARE WARRANTY

     Warranty for this software product is provided by Digital with
     the purchase of a license for the product as defined in the
     Software Warranty Addendum of this SPD.

     [TM]  The DIGITAL Logo, VMS, DECwindows, VAX, MicroVAX, VAXs-
           tation, VAXserver and VAXset are trademarks of Digital
           Equipment Corporation.





















                                     7
