DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: DEC Pascal Version 5.7 for OpenVMS Alpha Systems SPD DEC Pascal Version 5.6 for OpenVMS VAX 25.11.45 Systems DESCRIPTION DEC Pascal is an implementation of the Pascal[*] language that accepts programs compatible with either level of the ISO specification for Pro- gramming languages - Pascal ([ISO 7185-1987]) as well as (ANSI/IEEE 770X3.97-1987). DEC Pascal also meets the Federal Information Process- ing Standard Publication ((FIPS-109)) requirements by accepting pro- grams conforming to the ANSI standard. DEC Pascal also accepts many features from the Extended Pascal standard ((ANSI/IEEE 770X3.160-1989) and (ISO 10206)). The compiler has been validated for both levels of the ISO unextended Pascal standard and for conforming to FIPS-109. Containing extensions to the standards, DEC Pascal generates optimized, shareable code that takes full advantage of the VAX and Alpha hardware floating point and character instruction sets and the virtual memory capabilities of the OpenVMS VAX or OpenVMS Alpha Operating Systems. The language contains control statements, data types, and predeclared procedures and func- tions. Major Pascal Language Elements: o INTEGER, REAL, CHAR, BOOLEAN, enumerated, and subrange data types o ARRAY, RECORD, SET, and FILE structured data types o Schemata type denoting families of types ____________________ K.Jensen and N. Wirth ,Pascal User Manual and Report,2nd.ed., Spring- Verlag, New York 1974. January 1999 o STRING schema denoting variable-length character strings up to 65,535 characters o FOR, REPEAT, and WHILE repetitive control statements o CASE, IF-THEN, and IF-THEN-ELSE conditional statements o BEGIN...END compound statement o User-defined procedures and functions that can return structured types (other than file types) o GET, PUT, READ, WRITE, READLN, and WRITELN input and output pro- cedures o Concatenation operator and set of predefined character string func- tions including INDEX, LENGTH, and SUBSTR o Standard set of functions, procedures, and operators o Module initialization and finalization o Initial state specification o Enhanced structured value constructors o Implementation characteristics (MAXCHAR, MINREAL, MAXREAL, EPSREAL) o OTHERWISE clause and case ranges for CASE statement and variant records o Date and Time functions and procedures o Short Circuit Boolean Operators (AND_THEN and OR_ELSE) o Non-Decimal representation of numbers o Exponentiation operator (**) Pascal Extensions: o DOUBLE (VAX D_floating, VAX G_floating, IEEE T_floating) data type that supports the Alpha double range and double precision float- ing point architectureal features o QUADRUPLE (VAX H_floating on OpenVMS VAX and IEEE X_floating on Open- VMS Alpha) data type that supports the Alpha extended range and ex- tended precision floating point architectural features 2 o Support for null-terminated strings via the C_STR_T predefined type and the MALLOC_C_STR, C_STR, PAS_STRCPY, and PAS_STR predefined func- tions (OpenVMS Alpha only) o VARYING data type denoting variable-length character strings up to 65,535 characters o Language elements providing sequential and random access to RMS rel- ative files, and sequential and keyed access to RMS multikey in- dexed files o Optional attributes specification on constants, variables, types, type identifiers, routines, routine parameters, schema discrimi- nants, and compilation units o MODULE capability for combining procedures, functions, and other declarations for compilation separate from the main program o ENVIRONMENT and INHERIT attributes to control separate and inde- pendent compilation o UNSIGNED, CARDINAL, INTEGER_ADDRESS, INTEGERnn, UNSIGNEDnn, POINTER, and SINGLE predefined types o VALUE initialization section and optional value initialization in declaration section program level o External procedure and function declarations o Nonpositional passing of parameters o RETURN, BREAK, CONTINUE, EXIT, and NEXT statements o Default values for parameters o Double-quoted character strings with backslash constants o 31-character identifiers that can include dollar sign ($) and un- derscore (_) As a native-mode language, DEC Pascal is integrated into the Common Language Environment. This integration provides DEC Pascal users with: o Support for OpenVMS interlanguage calling standard 3 o Access to all OpenVMS system services o Access to the facilities of the OpenVMS Symbolic Debugger o Callable interfaces to the OpenVMS Common Run-time Library o Oracle CDD/Repository support o Support for the Language-Sensitive Editor/Source Code Analyzer to provide error diagnostics to Language-Sensitive Editor component, cross reference information for Source Code Analyzer component, and support for low-level program design, including the processing of pseudocode. In addition, DEC Pascal for OpenVMS VAX Systems also supports the extraction of design information from comments. o Ability for functions to return structured types (other than file types) Options available to Pascal users at compile time include: o Run-time checks for array, character string, and subrange bounds o Run-time checks for arithmetic overflow, valid case selector val- ues, and null pointer variables o Run-time checks for invalid declarations and illegal GOTO usage o Generation of information for use by the OpenVMS Symbolic Debug- ger and the run-time error traceback mechanism o Creation of an environment file facilitating separate compilation o Cross-reference listing o Creating in the listing file a representation of the object code generated by the compiler o Printing of information-level messages including flagging uses of extensions to the ISO and ANSI Pascal standards 4 SOURCE CODE INFORMATION The following source code modules are provided on all available dis- tribution media for this product: KITINSTAL.COM, LIBDEF.PAS, MTHDEF.PAS, PASCAL$IVP.PAS, PASCAL.CLD, PASCAL.HLP, PASDEF.PAS, PASSTATUS.PAS, SIGDEF.PAS, VUE$COMPILE.COM, BACK.PAS, DTK_MODULES.DAT, FRONT.PAS, LIB_MODULES.DAT, MTH_MODULES.DAT, NCS_MODULES.DAT, OTS_MODULES.DAT, PASCAL$D_FLOAT.PAS, PASCAL$G_FLOAT.PAS, PASCAL$CMA ROUTINES.PAS, PASCAL$CVT ROUTINES.PAS, PASCAL$DTK_ROUTINES.PAS, PASCAL$LIB_ROUTINES.PAS, PASCAL$MTH_ROUTINES.PAS, PASCAL$NCS_ROUTINES.PAS, PASCAL$OTS_ROUTINES.PAS, PASCAL$PPL_ROUTINES.PAS, PASCAL$SMG_ROUTINES.PAS, PASCAL$SOR_ROUTINES.PAS, PASCAL$STR_ROUTINES.PAS, PASSTR$IVP.PAS, PPL_MODULES.DAT, RMSUSR.PAS, SDLPASCAL.EXE, SMG_MODULES.DAT, SOR_MODULES.DAT, STARLET.PAS, STARLET_MODULES.DAT, STR_MODULES.DAT, CONSTRUCTOR_1.PAS, FUNCTION_CALLS.PAS, HANDLER.PAS, HELLOWORLD.PAS, IMPLEMENTATION_MODULE.PAS, 5 INITIAL_STATE_1.PAS, INITIAL_STATE_2.PAS, INTERFACE_MODULE.PAS, LIB$FIND_FILE.PAS, MAIN_PROGRAM.PAS, RFA_READ.PAS, SCHEMA_PARAMETERS.PAS, SMG_EXAMPLE.PAS, SYS$ASCTIM_AND_GETTIM.PAS, SYS$CHECK_ACCESS.PAS, SYS$DCLEXH.PAS, SYS$DEVICE_SCAN.PAS, SYS$FAO.PAS, SYS$GETDVI.PAS, SYS$GETJPI.PAS, SYS$GETQUI.PAS, SYS$GETSYI.PAS, SYS$GETUAI.PAS, SYS$PROCESS_SCAN.PAS, SYS$PUTMSG.PAS, SYS$SNDJBC.PAS, SYS$TRNLNM.PAS, USE_XABDAT.PAS PASCAL$ACLEDIT_ROUTINES.PAS PASCAL$CLI_ROUTINES.PAS PASCAL$CONV_ROUTINES.PAS PASCAL$DCX_ROUTINES.PAS PASCAL$EDT_ROUTINES.PAS PASCAL$FDL_ROUTINES.PAS PASCAL$LBR_ROUTINES.PAS PASCAL$MAIL_ROUTINES.PAS PASCAL$PSM_ROUTINES.PAS PASCAL$SMB_ROUTINES.PAS PASCAL$TPU_ROUTINES.PAS PASCAL$SHOW_VERSIONS.COM PASCAL$SET_VERSION.COM PASCAL$DEFAULT_VERSION.COM The source code modules are provided in order to install and describe the product. Modules include sample test program, help file, example files, and system definition inclusion files. This source code is provided on an "AS IS" basis without any warranty of any kind either express or implied. Run-Time Library Redistribu- tion 6 The DEC Pascal kit may include updated Pascal Run-Time Library share- able images. DIGITAL grants the user a nonexclusive royalty-free world- wide right to reproduce and distribute the executable version of the Run-Time Library designated as PASRTL.EXE and PASMSG.EXE (VAX) or PAS$RTL.EXE and PAS$MSG.EXE (Alpha) (the "RTLs") provided that the user: o Distributes the RTLs only in conjunction with and as a part of the user's software application product which is designed to operate in the OpenVMS environment; o Does not use DIGITAL's name, logo, or trademarks to market the user's software application product; o Includes DIGITAL's copyright notice for DEC Pascal on the user's product disk label and/or on the title page of the documentation for software application product; o Agrees to indemnify, hold harmless, and defend DIGITAL from and against any claims or lawsuits, including attorney's fees, that arise or result from the use or distribution of the software application prod- uct. Except as expressly provided herein, DIGITAL grants no implied or express license under any of its patents, copyrights, trade se- crets, trademarks or any license or other proprietary interests and rights. HARDWARE REQUIREMENTS Processors Supported: Any Alpha system capable of running the OpenVMS Alpha Operating System Version 6.1 to 7.2 or any VAX capable of run- ning the OpenVMS Operating System V5.5 to 7.2. Refer to the OpenVMS Operating System's Software Product Description (SPD 25.01.xx) for de- tails. 7 Disk Space Requirements (Block Cluster Size = 1) For DEC Pascal for OpenVMS Alpha Systems: DEC Pascal Compiler: Disk space required for 17,000 blocks installation: (8.5 MB) Disk space required for 16,500 blocks permanent use: (8.25 MB) Starlet Library Files: Disk space required for 11,500 blocks installation: Disk space required for 10,000 blocks permanent use: DEC Pascal Example Files: Disk space required for 150 blocks installation: Disk space required for 150 blocks permanent use: For DEC Pascal for OpenVMS VAX Systems: DEC Pascal Compiler: Disk space required for 3,500 blocks installation: Disk space required for 3,000 blocks permanent use: Starlet Library Files: 8 Disk space required for 11,500 blocks installation: Disk space required for 10,000 blocks permanent use: DEC Pascal Example Files: Disk space required for 150 blocks installation: Disk space required for 150 blocks permanent use: These block 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 selected. OPTIONAL HARDWARE Floating point intensive applications should be run on configurations with the appropriate hardware support for the floating point data types being used. Consult the Base Operating System Software Product Descrip- tion for the Floating Point Accelerator or other floating point hard- ware appropriate for your configuration. SOFTWARE REQUIREMENTS For Alpha Systems: o OpenVMS Alpha Operating System Version 6.1 - Version 7.2 For VAX Systems: o OpenVMS VAX Operating System Version 5.5 - Version 7.2 9 SOFTWARE LICENSING This software is furnished only under a license. For more information about DIGITAL's licensing terms and policies, contact your local Com- paq office. 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, Personal Use and Concurrent Use basis. This layered product offers a Personal Use license. Each Personal Use license allows one identified individual to use the layered product. This layered product offers a Concurrent Use license. Each Concurrent Use license allows any one individual at a time to use the layered prod- uct. For more information on the License Management Facility, refer to the OpenVMS Operating System Software Product Description or the License Management Facility manual of the OpenVMS Operating System documen- tation set. For more information about Compaq's licensing terms and policies, con- tact your local Compaq office. CLUSTER ENVIRONMENT This layered product is fully supported when installed on any valid and licensed OpenVMS Cluster* configuration without restrictions. The HARDWARE REQUIREMENTS section of this product's Software Product De- scription detail any special hardware required by this product. * V5.x OpenVMS Cluster configurations are fully described in the Open- VMS Cluster Software Product Description (29.78.xx) and include CI, Ethernet, and Mixed Interconnect configurations. 10 OPENVMS TAILORING CLASSES The following OpenVMS classes are required for full functionality of this layered product: o OpenVMS Required Saveset o Programming Support o Utilities OPTIONAL SOFTWARE For Alpha Systems: o Oracle CDD/Repository for OpenVMS o DECset Release 12.3 for OpenVMS Alpha, which includes: - DIGITAL Language-Sensitive Editor/Source Code Analyzer (LSE/SCA) for OpenVMS Alpha - DIGITAL Test Manager (DTM) for OpenVMS Alpha - DIGITAL Performance and Coverage Analyzer (PCA) for OpenVMS Alpha - DIGITAL Code Management System (CMS) for OpenVMS Alpha - DIGITAL Module Management System (MMS) for OpenVMS Alpha For VAX Systems: o Oracle CDD/Repository for OpenVMS o DECset Release 12.3 for OpenVMS VAX Systems which includes: - DIGITAL Language-Sensitive Editor/Source Code Analyzer (LSE/SCA) for OpenVMS Systems - DIGITAL Test Manager (DTM) for OpenVMS Systems - DIGITAL Performance and Coverage Analyzer (PCA) for OpenVMS Sys- tems - DIGITAL Code Management System (CMS) for OpenVMS Systems 11 - DIGITAL Module Management System (MMS) for OpenVMS Systems GROWTH CONSIDERATIONS The minimum hardware/software requirements for any future version of this product may be different from the requirements for the current version. DISTRIBUTION MEDIA DEC Pascal OpenVMS Alpha ONLY: DEC Pascal for OpenVMS Alpha is available on the OpenVMS Alpha Soft- ware Layered Products Library Package (QA-03XAA-H8). The library pack- age includes media and documentation on CD-ROM. DEC Pascal OpenVMS VAX ONLY: DEC Pascal for OpenVMS VAX is available on the OpenVMS VAX Software Layered Products Library Package (QA-5G88A-H8). The library package includes media and documentation on CD-ROM. Media/documentation kits containing only the DEC Pascal for OpenVMS VAX product are available separately. The kits contain media on Magtape (9-track 1600 BPI) or TK50 Streaming Tape with hardcopy documentation. YEAR 2000 READY This product is Year 2000 Ready. Year 2000 Ready is defined: "Year 2000 Ready" products are defined by DIGITAL as products capable of accurately processing, providing, and /or receiving date data from, into and between the twentieth and the twenty -first centuries, and the years 1999 and 2000, including leap year calculations, when used in accordance with the associated DIG- ITAL product documentation and provided that all hardware, firmware and software used in combination with such DIGITAL products properly exchange accurate date data with DIGITAL products. 12 For additional information visit Compaq's DIGITAL Products Year 2000 Ready web site located at http://ww1.digital.com/year2000/warranty.asp. SOFTWARE WARRANTY This software is provided by Compaq with a 90 day conformance warranty in accordance with the Compaq warranty terms applicable to the license purchase. ORDERING INFORMATION For DEC Pascal for OpenVMS Alpha Systems: Software Licenses Personal Use: QL-126AA-2B Concurrent Use: QL-126AA-3* Unlimited System Use: QL-098A*-** Software Media/Documentation (CD-ROM): QA-03XAA-H8 Software Documentation (Hard Copy): QA-098AA-GZ Software Product Services: QT-098A*-** For DEC Pascal for OpenVMS VAX Systems: Software Licenses Personal Use: QL-126AA-2B Concurrent Use: QL-126AA-3* Unlimited System Use: QL-126A*-** Software Media/Documentation: QA-126AA-H* Software Documentation (Hard Copy): QA-126AA-GZ Software Product Services: QT-126A*-** * Denotes variant fields. For additional information on available li- censes, services, and media, refer to the appropriate price book. 13 SOFTWARE PRODUCT SERVICES A variety of service options are available from Compaq. For more in- formation, contact your local Compaq office. TRADEMARK INFORMATION [TM] Oracle is a registered trademark and Oracle CDD/Repository and Oracle CDD/Administrator are trademarks of Oracle Corpo- ration. [TM] The DIGITAL logo, Alpha, DEC, DEC Pascal, DECwindows, DIGI- TAL, OpenVMS, VAX RMS, VAX and VMS are trademarks of Digital Equipment Corporation. All other trademarks and registered trademarks are the property of their respective holders. ©1993, 1998 Digital Equipment Corporation. All Rights Reserved. 14