PL-6
{{Short description|Programming language}}
{{Infobox programming language
| logo = Honeywell logo.svg
| paradigm = procedural
| designers = Honeywell, Inc.
| operating system = Honeywell CP-6
| influenced by = PL/I
}}
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.{{cite book |last1=Honeywell |title=CP-6 Concepts and Facilities |date=September 1980 |page=3-1 |url=http://bitsavers.org/pdf/honeywell/large_systems/cp-6/CE26-01_CP-6_Concepts_and_Facilities_Sep80.pdf |access-date=January 28, 2023}}
Description
=Data types=
class="wikitable" | |
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
{{reflist}}
External links
- {{cite book|last1=Honeywell, Inc.|title=CP-6 Introduction to PL-6|date=June 1988|url=https://bitsavers.org/pdf/honeywell/large_systems/cp-6/XP03-00_introToPL-6_Jun88.pdf|accessdate=Jul 8, 2024}}
Category:Systems programming languages
Category:Procedural programming languages
Category:Programming languages created in the 1970s
Category:Honeywell mainframe computers
{{compu-lang-stub}}