PL-6
PL-6 is a discontinued system programming language based on PL/I. PL-6 was developed by Honeywell, Inc. in the late 1970s as part of the project to develop the CP-6 operating system, a follow-on to Xerox CP-V to run on Honeywell Series 60 and DPS-8 systems.[1]
Description
Data types
Declaration attribute | Description |
---|---|
SBIN(n) | Signed binary integer of n bits. If (n) is not specified, 36 bits is the default. Alternatively "SBIN WORD", "SBIN HALF", or "SBIN BYTE" specifies 36, 18, or 9 bits respectively. |
UBIN(n) | Unsigned binary integer of n bits. Otherwise the same as SBIN. |
CHAR(c) | Fixed-length character string of length c characters. |
BIT(b) | Fixed-length bit string of length b bits. |
PTR | A memory address. |
PL-6 has no provision for floating point data.
Aggregates
Arrays are one dimensional and zero-based, with the zero specified explicitly. For example, DCL x (0:4) SBIN;
declares an array of five signed 36-bit integers. The elements are numbered x(0), x(1),...,x(4).
Structures are also supported. For example:
DCL 1 struct, 2 a, 3 b CHAR(3), 3 * CHAR(1), 2 c CHAR(4);
declares a structure named struct consisting to two elements: a minor structure a consisting of a three-character field b and an unnamed one-character element ("*" indicates the element is unnamed), and a four-character element c.
The top level of the structure must be 1, and the remaining levels 2–10, if used, have to be specified in order with no levels skipped.
References
- Honeywell (September 1980). CP-6 Concepts and Facilities (PDF). p. 3-1. Retrieved January 28, 2023.