VAX PASCAL, Version 3.5 is a Pascal language implementation specifically designed for VAX hardware and VMS/MicroVMS Operating Systems.
Key Features & Capabilities:
- Standard Compliance: Fully compliant and validated against ISO 7185-1983(E), ANSI/IEEE 770X3.97-1983, and Federal Information Processing Standard Publication (FIPS-109).
- Optimized Performance: Generates optimized, sharable code that leverages VAX hardware's floating-point and character instruction sets, along with virtual memory capabilities.
- Core Pascal Support: Includes all major standard Pascal language elements such as fundamental and structured data types (INTEGER, REAL, ARRAY, RECORD, SET, FILE), control statements (FOR, WHILE, IF-THEN-ELSE, CASE), and I/O procedures (READ, WRITE, etc.).
- VAX PASCAL Extensions:
- Extended Precision: Adds
DOUBLE (64-bit Dfloating/Gfloating) and QUADRUPLE (128-bit H_floating) data types for high-precision floating-point arithmetic.
- Variable-Length Strings: Introduces the
VARYING data type for character strings up to 65,535 characters, with string manipulation functions (INDEX, LENGTH, SUBSTR) and concatenation.
- File Access: Provides language elements for sequential, random, and keyed access to VAX RMS files.
- Modular Programming: Supports a
MODULE capability and ENVIRONMENT/INHERIT attributes for separate and independent compilation of program units.
- Language Enhancements: Includes an exponentiation operator (
**), an OTHERWISE clause for CASE statements, binary/hexadecimal/octal constants, UNSIGNED and SINGLE predefined types, value initialization, and the ability for functions to return structured types (excluding file types).
- VAX System Integration: Natively integrated into the VAX Common Language Environment, enabling:
- Interlanguage calling.
- Access to VMS/MicroVMS system services.
- Support for VAX Symbolic Debugger and Language-Sensitive Editor.
- Callable interfaces to VAX RMS, SORT, DATATRIEVE, VAX Common Data Dictionary, and VAX Source Code Analyzer.
- Robust run-time checks for array bounds, string lengths, arithmetic overflow, and null pointers.
Availability:
The product is available with various licensing options for VAX/VMS systems, including single-use and VAXcluster licenses, and requires specific hardware and software prerequisites.