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.
PL-6 has no provision for floating point data.
Arrays are one dimensional and zero-based, with the zero specified explicitly. For example, <code>DCL x (0:4) SBIN;</code> 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.