DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: DEC Ada Version 3.4 for OpenVMS VAX Systems SPD 26.60.16 DESCRIPTION This Software Product Description includes the following two products: o DEC Ada Version 3.4 for OpenVMS VAX Systems o DEC Ada Version 3.4 Professional Development Option for OpenVMS VAX Systems DEC Ada for OpenVMS VAX is the Digital Equipment Corporation validated implementation of the full ANSI/MIL-STD-1815A-1983 Ada Language. As a result of meeting the ANSI standard, DEC Ada also conforms to the Federal Information Processing Standard (FIPS-119). The DEC Ada com- piler runs on the OpenVMS operating system and generates optimized, shareable, and position-independent code. As a native mode OpenVMS language, DEC Ada is integrated into the Open- VMS common language environment. All OpenVMS system services and util- ities are available to programs written in DEC Ada. DEC Ada supports the OpenVMS Record Management Services (RMS) sequential, relative, and indexed file organizations and associated access methods. DEC Ada pro- grams can invoke modules written in other OpenVMS languages. Addition- ally, programs written in other languages can invoke DEC Ada modules. Ada is a powerful, general-purpose language that supports many mod- ern 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 April 1997 AE-EU91P-TE language were features that would reduce software costs by increas- ing maintainability, evolvability, reliability, and portability. Ada provides a modular structure for programs by allowing separate com- pilation of program units, as well as providing strong typing, task- ing, exception handling, and other standard language features that must be supported across implementations. Ada provides a number of features from general systems to 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 cer- tain predefined operations may be performed on data of that type. Because type checking is done at compile time, strong typing en- sures that any errors associated with incorrect data types are de- tected at compile time. o Data Abstraction - Also known as information hiding, data abstrac- tion hides implementation details while providing users with mech- anisms for using the implementation. Abstraction allows the user to focus on important characteristics while ignoring underlying de- tails. Ada provides various levels of abstraction through features such as private data types and packages. o Concurrent Processing - For many applications, it is important that a program be conceived of as a number of parallel, rather than se- rial activities. Most high-order languages provide little or no sup- port for handling such parallel or concurrent activities. They rely on facilities of the host operating system. Ada uses tasks to al- low parallel activities to be programmed directly within the lan- guage. o Separate Compilation - Ada's separate compilation feature allows 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 unlike separate compilation features in other languages where little information about sepa- rately compiled modules is maintained. 2 o Generic Definitions - A generic unit is a template from which spe- cific instances can be made at compile time. In many cases, the logic of an algorithm or a set of operations is independent of the spe- cific 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 let the user 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 com- puter 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 oc- curs in an Ada program, normal processing is abandoned and control passes to the exception handler. DEC Ada Components and Special System-Related Features: o Ada compiler fully conforming to ANSI/MIL-STD-1815A-1983. For de- tails see the DEC Ada Language Reference Manual. o Ada program library manager that provides support for programming teams through: - Program libraries that can be shared by many programmers - A powerful search list model for program libraries. This per- mits the following: * The relationships among program libraries can be changed eas- ily. * Individual programmers can establish different views of pro- gram library relationships. - Automatic recompilation of obsolete compilation units - The ability to share compiled Ada code either by reference or copy 3 o Strongly-typed DEC Ada bindings that provide interfaces for the fol- lowing versions of X Window Systems[TM] and Motif® routines: - X Window System Version 11R4 and Motif Version 1.1.3 - X Window System Version 11R5 and Motif Version 1.2 o Implementation of AI-00866, which permits an 8-bit character set based on ISO standard 8859/1 (commonly known as Latin-1). o Availability of a portability command that causes a portability sum- mary report to be included with the compilation listing file. The report indicates the use of potentially nonportable features and constructs. o Support for the ISO Math Library packages GENERIC_PRIMITIVE_FUNCTIONS and GENERIC_ELEMENTARY_FUNCTIONS. o Debugging capability provided through the OpenVMS debugger. High-level, fully symbolic debugging including support for debugging tasking programs, packages and mixed DEC Ada and non-Ada code. o Integration with OpenVMS VAX Operating System including: - Conformance to the OpenVMS VAX Calling Standard, which allows Ada code to call and be called by code written in other languages, as well as to call OpenVMS system services and the OpenVMS VAX Run-Time Library - The ability to call Open Record Management Services (RMS) rou- tines directly - Full access to relative and indexed file capabilities - The ability to handle exceptions from non-Ada code and gener- ate exceptions to be handled by non-Ada code - The ability to handle OpenVMS asynchronous system traps (ASTs) 4 - The ability to link with shared images and use shared global sec- tions - The ability to share data with non-Ada code through global vari- ables and psects (common blocks) o System-dependent facilities - Different systems vary in such char- acteristics as the size of storage units, memory size, and the small- est and largest integer values supported. DEC Ada provides the pre- defined package SYSTEM to define system-related constants and to represent system-dependent information. o DEC Ada provides representation clauses that allow the user to tai- lor the representation of data to suit a particular system. DEC Ada provides: - Length clauses that specify the amount of storage associated with a type - Enumeration representation clauses that specify the internal codes for the literals of enumeration types - Record representation clauses that specify the layout of a record type, such as the order, position, and size of record components - Address clauses that specify required addresses in storage for objects, imported subprograms, or single entries o DEC Ada provides a number of pragmas (compiler directives) that al- low various system-related parameters to be set and changed and con- trol mixed-language programming. o Comprehensive diagnostic messages with references to the DEC Ada Language Reference Manual. This feature is directed at helping the new DEC Ada user. 5 DEC Ada Professional Development Option for OpenVMS VAX Systems The DEC Ada Professional Development Option is a separately licensed option that is available with DEC Ada on OpenVMS VAX Systems. The DEC Ada Professional Development Option includes the following capabil- ities: o Smart Recompilation - This feature can significantly reduce the num- ber of recompilations that are needed to rebuild a DEC Ada program after some compilation units change. Smart recompilation enables the compiler to propagate changes quickly through a system, elim- inating up to 100% of the usual recompilations. o Program Library File-Block Caching - This feature uses an in-memory cache of file blocks to minimize the actual amount of disk input- output that must be performed. As a result, the elapsed time for compilations is significantly reduced. o Multilevel Program Library Directory Structure - This feature pro- vides a more efficient program library directory structure to im- prove the performance of access to large program libraries. The DEC Ada Professional Development Option is designed so that it is compatible with libraries that are created without the DEC Ada Pro- fessional Development Option and libraries created with a previous ver- sion of DEC Ada. Once a program library is created, DEC Ada program- mers do not need to change any of their development procedures to ben- efit from the DEC Ada Professional Development Option. HARDWARE REQUIREMENTS Processors Supported VAXft: VAXft 3000 Processors VAX: VAX 4000 Model 50 VAX 4000 Model 100, 100A, 105A, 106A, 108 VAX 4000 Model 200 6 VAX 4000 Model 300 VAX 4000 Model 500, 500A, 505A VAX 4000 Model 600, 600A VAX 4000 Model 700A, 705A VAX 6000 Series Model 210, 220, 230, 240 VAX 6000 Series Model 310, 320, 330, 340, 360 VAX 6000 Series Model 410, 420, 430, 440, 450, 460 VAX 6000 Series Model 510, 520, 530, 540, 550, 560 VAX 6000 Series Model 610, 620, 630, 640, 650, 660 VAX 7000 Model 610, 620, 630, 640, 650, 660 VAX 7000 Model 710, 720, 730, 740, 750, 760 VAX 7000 Model 810, 820, 830, 840, 850, 860 VAX 8200, VAX 8250 VAX 8300, VAX 8350 VAX 8530, VAX 8550 VAX 8600, VAX 8650 VAX 8700 VAX 8800, VAX 8810, VAX 8820, VAX 8830, VAX 8840 VAX 8842, VAX 8974, VAX 8978 VAX 9000 Model 110, 110VP VAX 9000 Model 210, 210VP VAX 9000 Model 310, 310VP VAX 9000 Model 320, 320VP VAX 9000 Model 330, 330VP VAX 9000 Model 340, 340VP VAX 9000 Model 410, 410VP VAX 9000 Model 420, 420VP VAX 9000 Model 430, 430VP VAX 9000 Model 440, 440VP 7 VAX 10000 Model 610, 620, 630, 640, 650, 660 MicroVAX: MicroVAX II MicroVAX 2000 MicroVAX 3100 Model 10/10E, 20/20E, 30, 40, MicroVAX 3100 Model 80, 85, 88, 90, 95, 96, 98 MicroVAX 3200, MicroVAX 3300 MicroVAX 3400, MicroVAX 3500 MicroVAX 3600, MicroVAX 3800 MicroVAX 3900 VAXstation: VAXstation II/GPX, VAXstation II/QVSS VAXstation 2000 VAXstation 2000/GPX VAXstation 2000/MFB VAXstation 3100 Model 30, 38, 40, 48, 76 VAXstation 3100/GPX Model 38, 48, 76 VAXstation 3100/SPX Model 38, 48, 76 VAXstation 3200 VAXstation 3500, VAXstation 3520 VAXstation 3540 VAXstation 4000 Model 60, 90, 95, 96, VLC VAXserver: VAXserver 3100 Model 10, 10E, 20, 20E VAXserver 3200, 3300, 3400 VAXserver 3500, 3600, 3800, 3900 VAXserver 4000 Model 200, 300, 400, 500, 600 VAXserver 6000 Model 210, 220 VAXserver 6000 Model 310, 320 8 VAXserver 6000 Model 410, 420 VAXserver 6000 Model 510, 520 VAXserver 8200, 8250 VAXserver 8300, 8350 VAXserver 8530, 8550 VAXserver 8600, 8650 VAXserver 8700 VAXserver 8800, 8810, 8820, 8830, 8840 Processors Not Supported: MicroVAX I VAXstation I VAXstation 8000 VAX-11/725, VAX-11/730 VAX-11/750, VAX-11/751 VAX-11/780, VAX-11/782, VAX-11/785 Processor Restrictions: A TK50 Tape Drive is required for standalone MicroVAX 2000 and VAXs- tation 2000 systems. Disk Space Requirements (Block Cluster Size = 1): Disk space required for 88,000 blocks installation: (44 Mbytes) Disk space required for 62,000 blocks use (permanent): (31 Mbytes) These counts refer to the disk space required on the system disk. The sizes are approximate; actual sizes may vary depending on the user's system environment, configuration, and software options. 9 Compilation performance is highly dependent on the amount of physi- cal memory present. At least 2 Mbytes of physical memory is recommended for each concurrent Ada compilation. A minimum working set of 1.25 Mbytes is recommended. Memory Requirements for DECwindows Support: The minimum supported memory for this application running in a stan- dalone DECwindows environment with both the client and server execut- ing on that same system is 8 Mbytes. CLUSTER ENVIRONMENT This layered product is fully supported when installed on any valid and licensed VAXcluster* configuration without restrictions. The HARD- WARE REQUIREMENTS section of this product's Software Product Descrip- tion details any special hardware required by this product. * VAXcluster configurations are fully described in the OpenVMS Clus- ter Software Product Description (29.78.xx) and include CI, Eth- ernet, and Mixed Interconnect configurations. SOFTWARE REQUIREMENTS DEC Ada for OpenVMS VAX Systems o OpenVMS VAX Operating System Version 6.1-7.1 (SPD 25.01.xx) DEC Ada Professional Development Option for OpenVMS VAX o DEC Ada Version 3.4 for OpenVMS VAX Systems and o OpenVMS VAX Operating System Version 6.1-7.1 (SPD 25.01.xx) OpenVMS Tailoring: The following OpenVMS classes are required for use of full features of this layered product: o OpenVMS Required Saveset 10 o Utilities o Programming Support For more information on OpenVMS classes and tailoring, refer to the OpenVMS VAX Operating System Software Product Description (SPD 25.01.xx). OPTIONAL SOFTWARE o DECset Version 12.1 for OpenVMS VAX Systems, which includes: - DEC Language-Sensitive Editor/Source Code Analyzer (LSE/SCA) Ver- sion 4.4 for OpenVMS VAX Systems - DEC Test Manager Version 3.7 for OpenVMS VAX Systems - DEC Performance and Coverage Analyzer (PCA) Version 4.4 for Open- VMS VAX Systems - DEC Code Management System (CMS) Version 3.8 for OpenVMS VAX Sys- tems - DEC Module Management System (MMS) Version 3.1 for OpenVMS VAX Systems For more information on DECset for OpenVMS VAX Systems, refer to the Software Product Description (SPD 42.29.xx). o Digital GKS for OpenVMS VAX Systems For more information on Digital GKS for OpenVMS VAX Systems, refer to the Software Product Description (SPD 26.20.xx). GROWTH CONSIDERATIONS The minimum hardware/software requirements for any future version of this product may be different from the requirements for the current version. 11 Note: A version update represents a complete distribution media replace- ment for the previous release of DEC Ada. All user-developed source modules that comprise an application must be recompiled and rebuilt using only DEC Ada software for that version update. Individual com- ponents of DEC Ada software from the latest version update cannot be used in conjunction with components from a previous version. DISTRIBUTION MEDIA Nine-track 1600 BPI Magtape, TK50 Streaming Tape The software binaries and documentation are also available on vari- ous CD-ROM distributions: o OpenVMS VAX Software Layered Products Library-This offering includes the OpenVMS VAX Layered Product software binaries. (QA-5FW8A-A8) o OpenVMS VAX Online Documentation Library-This offering includes the documentation for the OpenVMS VAX Layered Products. (QA-VYR8A-G8) o OpenVMS VAX Software Layered Products Library Package- This offer- ing contains both the software binaries and documentation for the OpenVMS VAX Layered Products. (QA-5G88A-H8) ORDERING INFORMATION DEC Ada for OpenVMS VAX Systems Software Licenses: Personal Use: QL-056AA-2B Concurrent Use: QL-056AA-3* Unlimited System Use: QL-056A*-** Software Media: QA-056A*-** Software Documentation: QA-056AA-GZ Software Product Services: QT-056A*-** DEC Ada Professional Development Option for OpenVMS VAX Systems 12 Software Licenses: Personal Use: QL-0VQAA-2B Concurrent Use: QL-0VQAA-3* Unlimited System Use: QL-0VQA*-** Read Before Installation Letter: QA-0VQAA-GZ Software Product Services: QT-0VQA*-** Note: The Software Documentation kit (order number QA-0VQAA-GZ) con- tains only the Read Before Installation letter and must be ordered (at no cost) with all licenses for DEC Ada Professional Development Op- tion for OpenVMS VAX Systems. The DEC Ada Professional Development Option for OpenVMS VAX Systems binaries are provided with the DEC Ada binaries (QA-056A*-**). Pur- chase of a DEC Ada Professional Development Option for OpenVMS VAX Sys- tems License (QL-0VQA*-**) enables use of this capability. * Denotes variant fields. For additional information on available li- censes, services, and media, refer to the appropriate price book. SOFTWARE LICENSING This software is furnished only under the licensing provisions of Dig- ital Equipment Corporation's Standard Terms and Conditions. For more information about DIGITAL's licensing terms and policies, contact your local DIGITAL of- fice. License Management Facility Support: This layered product supports the OpenVMS License Management Facil- ity. License units for this product are allocated on an Unlimited System Use plus Personal Use and Concurrent Use basis. Each Personal Use license allows one identified individual to use the layered product. Each Concurrent Use license allows any one individ- ual at a time to use the layered product. 13 For more information on the License Management Facility, refer to the OpenVMS VAX Operating System Software Product Description (SPD 25.01.xx) or the License Management Facility manual of the OpenVMS VAX Operating System documentation set. SOFTWARE PRODUCT SERVICES A variety of service options are available from DIGITAL. For more in- formation, 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. This means that DIGITAL will remedy any nonconformance when it is reported to DIGI- TAL by the customer during the warranty period. The warranty period is one year. It begins when the software is installed or thirty days after delivery to the end user, whichever occurs first and expires one year later. All warranty related support for this software will end one year after release of the subsequent versions. Warranty is provided in the country of purchase. DIGITAL will provide a service location which will accept reporting (in format prescribed by DIGITAL) of a nonconformance problem caused when using the licensed software under normal conditions as defined by this SPD. DIGITAL will remedy a nonconformance problem in the current unaltered release of the licensed software by issuing a correction information such as: cor- rection documentation, corrected code; or a notice of availability of corrected code; or a restriction or a bypass. The customer will be re- sponsible for the preparation and submission of the problem report to the service location. 14 WARRANTY EXCLUSION DIGITAL does not warrant that the software licensed to customer shall be error free, that the software shall operate with any hardware and software other than as specified in this SPD, that the software shall satisfy customer's own specific requirements, or that copies of the software other than those provided or authorized by DIGITAL shall con- form to the SPD. DIGITAL makes no warranties with respect to the fitness and operabil- ity of modifications not made by DIGITAL. If the software fails to function for reasons previously stated, the customer's warranty will be invalidated and all service calls will be billable at the prevailing per call rates. This Software Warranty is effective for licensed software products or- dered in the United States after October 1988 and supersedes all prior versions. The previous information is valid at time of release. Please contact your local DIGITAL office for the most up-to-date information. ® Motif is a registered trademark of Open Software Foundation, Inc. ® POSTSCRIPT is a registered trademark of Adobe Sytems Incorpo- rated. [TM] X Window System is a common law trademark of the Mas- sachusetts Institute of Technology. 15 [TM] CI, DEC, DEC Ada, DEC Ada Professional Development Option, DECset, DECstation, DECsystem, DECwindows, DECthreads, DIG- ITAL, MicroVAX, OpenVMS, VAX, VAXcluster, VAXft, VAXserver, VAXstation, VMS and the DIGITAL Logo are trademarks of Digi- tal Equipment Corporation. © 1997 Digital Equipment Corporation. All rights reserved. 16