![]() |
![]() HP OpenVMS Systems |
![]() |
DEC AdaTechnical Overview and Comparison on DIGITAL Platforms
May 1999
This guide provides information about the Digital Equipment
Operating System and Version:
OpenVMS VAX Version 6.2 or higher
Software Version:
DEC Ada Version 3.5 or higher
Digital Equipment Corporation
May 1999 The information in this document is subject to change without notice and should not be construed as a commitment by Digital Equipment Corporation. Digital Equipment Corporation assumes no responsibility for any errors that may appear in this document. Possession, use, or copying of the software described in this publication is authorizied only pursuant to a valid written license from DIGITAL or an authorized sublicensor. No responsibility is assumed for the use or reliability of software on equipment that is not supplied by Digital Equipment Corporation or its affiliated companies. Restricted Rights: Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013. Copyright ©1998, 1999COMPAQ, the Compaq logo and the DIGITAL logo Registered in the U.S. Patent and Trademark Office. Bookreader, DEC, DEC Ada, DEC Ada PDO, DEC C, DECdocument, DIGITAL Fortran, DEC FUSE, DECladebug, DECnet, DECset, DECstation, DECtalk, DECtest, DECthreads, DIGITAL, DIGITAL UNIX, OpenVMS, ULTRIX, VAX, VAXcluster, VAX DOCUMENT, VMScluster, XD Ada, and the DIGITAL logo are trademarks of Digital Equipment Corporation. The following are third-party trademarks: IEEE is a registered trademark of the Institute of Electronic and Electrical Engineers. Intel is a registered trademark of Intel Corporation. Motif, OSF, and OSF/1 are registered trademarks of the Open Software Foundation, Inc. POSIX is a registered trademark of IEEE. POSTSCRIPT is a registered trademark of Adobe Systems, Inc. UNIX is a registered trademark in the United States and other countries licensed exclusively through X/Open Company Ltd. VADS and Apex are registered trademarks of Rational Software Corporation. X/Open is a trademark of X/Open Company Limited. X Window System is a trademark of the Massachusetts Institute of Technology. All other trademarks and registered trademarks are the property of their respective holders. 0 This document was prepared using VAX DOCUMENT, Version V3.2-1m.
PrefaceThis guide provides a technical overview of the Digital Equipment Corporation implementation of the Ada programming language and compares that implementation across various DIGITAL platforms and other external implementations (VADS or GNAT, for example).
This guide consists of the following chapters:
Intended AudienceThis guide is intended to answer questions about DEC Ada and the differences between any two DEC Ada implementations or between DEC Ada and another Ada implementation (VADS or GNAT, for example). It is expected that users are familiar with the Ada language. Familiarity with DEC Ada and DIGITAL platforms is also helpful. Familiarity with Rational Software Corporation's VADS product is helpful in understanding Appendix C. Familiarity with the GNAT compiler is helpful in understanding Appendix E. Related DocumentsDIGITAL provides the following DEC Ada documentation:
On all systems, extensive online help is provided for the DEC Ada compiler and program library. Release notes are also provided for every release. ConventionsThe name of the OpenVMS AXP operating system has been changed to OpenVMS Alpha. Any references to OpenVMS AXP or AXP are synonymous with OpenVMS Alpha or Alpha. References to OpenVMS refer to both OpenVMS Alpha and OpenVMS VAX. Specific references to either platform are noted. The name of the DEC OSF/1 operating system has been changed to the DIGITAL UNIX operating system. Any references to DEC OSF/1 are synonymous with DIGITAL UNIX unless specified otherwise. References to the ULTRIX operating system are to ULTRIX MIPS systems, not ULTRIX VAX systems. In this guide, VADS refers to the VADS product line produced by Rational Software Corporation. VADS is an extensive family of mature, production-quality, optimizing Ada compilers, cross-compilers, and related tools. In this guide GNAT refers to the GNAT compiler, an Ada95 compiler available from Ada Core Technologies, Inc. (See Appendix E.) The following conventions are also used in this guide:
Chapter 1
|
As of June 1996, DEC Ada for ULTRIX RISC is in retirement and is no longer supported. |
DEC Ada is similar across all platforms. It is a fully validated compiler and as such, it is implemented according to the Ada standard as specified in ANSI/MIL-STD-1815A-1983 and ISO/8652-1987. As a result of meeting the ANSI standard, DEC Ada also conforms to the Federal Information Processing Standard (FIPS-119) and the International Standards Organization (ISO/8652-1987) standards for the Ada programming language.
DEC Ada, an Ada 83 compiler, is fully validated against the ACVC 1.11 test suite.
While all validated Ada compilers are implemented according to the Ada standard, the standard itself allows for differing interpretations. Therefore, an Ada compiler may be implemented in such a way as to take advantage of certain platform-specific features as in the following areas:
The main components of DEC Ada are as follows:
The design of the DEC Ada compiler is oriented toward medium- to large-scale software development. It was not designed with any particular application domain in mind. Its design is, therefore, consistent with the general applicability of its host.
DEC Ada can be implemented on the following hardware and software platforms:
The following XD Ada cross compilers for OpenVMS are available from EDS Scicon:
DIGITAL recommends the following compilers for Ada 95 solutions:
Target systems for the DEC Ada product are the same as the host systems. Programs in source, object, or executable image format can be moved from any host to any like target (for example, from any OpenVMS VAX system to another OpenVMS VAX system), using any common medium (for example, disk or magnetic tape) or communication medium (for example, DECnet). Complete Ada program libraries can also be moved in the same manner after using the OpenVMS Backup utility.
Customers cannot retarget the compiler.
As a native mode language, DEC Ada is integrated into the common language environment. On OpenVMS, DEC Ada supports the Record Management Services (RMS) sequential, relative, and indexed file organizations and access methods. DEC Ada programs can invoke modules written in other DIGITAL languages. Additionally, programs written in other DIGITAL languages can invoke DEC Ada modules.
A number of the compiler components are common to other DIGITAL-supplied language products. No provision is made for customers to take advantage of these components as independent entities.
The result of running the DEC Ada compiler is a standard object file that can be linked on the host system.
When linking a DEC Ada program, the program library manager identifies the units needed and checks that they are all current. It also constructs an initialization module that elaborates the library units in an appropriate order. Finally, it invokes the system linker to form an executable program.
Tools and utilities of particular importance are as follows:
The compiler generates a debugger symbol table as part of the object module for use with the host system debugger for full symbolic debugging. Optionally, it also generates a data analysis file for use with the source code analyzer or cross-reference tool.
On OpenVMS systems, the compiler can generate a diagnostic file for use with the language-sensitive editor (LSE).
Table 1-1 lists some of the development tools and utilities.
Tool or Utility Type | Product Name | Platform |
---|---|---|
Code management system |
DIGITAL CMS (DECset)
|
OpenVMS VAX
and OpenVMS Alpha DIGITAL UNIX
|
Editor |
DIGITAL LSE (DECset)
|
OpenVMS VAX
and OpenVMS Alpha DIGITAL UNIX
|
Debugger | OpenVMS Debugger |
OpenVMS VAX
and OpenVMS Alpha |
dbx
(not recommended)
DIGITAL UNIX Ladebug |
DIGITAL UNIX
DIGITAL UNIX |
|
Source code analyzer | DIGITAL SCA (DECset) |
OpenVMS VAX
and OpenVMS Alpha |
Cross referencer | DEC FUSE Cross Referencer | DIGITAL UNIX |
Call graph browser | DEC FUSE Call Graph Browser | DIGITAL UNIX |
Test manager | DIGITAL Test Manager (DECset) |
OpenVMS VAX
and OpenVMS Alpha |
Performance analyzer | DIGITAL PCA (DECset) |
OpenVMS VAX
and OpenVMS Alpha |
prof
gprof DEC FUSE Profiler |
DIGITAL UNIX
DIGITAL UNIX DIGITAL UNIX |
|
Module management |
DIGITAL MMS (DECset)
|
OpenVMS VAX
and OpenVMS Alpha DIGITAL UNIX
|
DEC Ada supports the following features:
The following chapters provide a high-level technical overview of these features, which constitute the DIGITAL implementation of the Ada language.
In addition, the chapters focus on DIGITAL extensions to the Ada standard, ANSI/MIL--STD--1815A--1983 and on the differences in implementation across platforms. All of the language elements specified by the ANSI or ISO standard definition for the Ada language are provided by DEC Ada. DEC Ada also provides the implementation of certain options and interpretations, as permitted by the standard.
Appendix A contains a table (Table A-1) that lists additional sources of information for the topics covered in this guide.
Next | Contents | Index |