# PL-6

> Mediated Wiki article. Canonical URL: https://mediated.wiki/source/PL-6
> Markdown URL: https://mediated.wiki/source/PL-6.md
> Source: https://en.wikipedia.org/wiki/PL-6
> Source revision: 1292547030
> License: Creative Commons Attribution-ShareAlike 4.0 International (https://creativecommons.org/licenses/by-sa/4.0/)

Programming language

PL-6 Paradigm procedural Designed by Honeywell, Inc. OS Honeywell CP-6 Influenced by PL/I

**PL-6** is a discontinued [system programming language](/source/System_programming_language) based on [PL/I](/source/PL%2FI). PL-6 was developed by [Honeywell, Inc.](/source/Honeywell%2C_Inc.) in the late 1970s as part of the project to develop the [CP-6](/source/Honeywell_CP-6) [operating system](/source/Operating_system), a follow-on to Xerox [CP-V](/source/CP-V) to run on [Honeywell Series 60 and DPS-8 systems](/source/Honeywell_6000_series).[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](/source/Floating_point) data.

### Aggregates

**[Arrays](/source/Array_data_type)** 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](/source/Record_(computer_science))** 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

1. **[^](#cite_ref-1)** Honeywell (September 1980). [*CP-6 Concepts and Facilities*](http://bitsavers.org/pdf/honeywell/large_systems/cp-6/CE26-01_CP-6_Concepts_and_Facilities_Sep80.pdf) (PDF). p. 3-1. Retrieved January 28, 2023.

## External links

- Honeywell, Inc. (June 1988). [*CP-6 Introduction to PL-6*](https://bitsavers.org/pdf/honeywell/large_systems/cp-6/XP03-00_introToPL-6_Jun88.pdf) (PDF). Retrieved Jul 8, 2024.

This programming-language-related article is a stub. You can help Wikipedia by adding missing information.

- [v](https://en.wikipedia.org/wiki/Template:Prog-lang-stub)
- [t](/source/Template_talk%3AProg-lang-stub)
- [e](https://en.wikipedia.org/wiki/Special:EditPage/Template:Prog-lang-stub)

---
Adapted from the Wikipedia article [PL-6](https://en.wikipedia.org/wiki/PL-6) by Wikipedia contributors ([contributor history](https://en.wikipedia.org/wiki/PL-6?action=history)). Available under [Creative Commons Attribution-ShareAlike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). Changes may have been made.
