IBM RPG II

[3] RPG II is a fixed-format programming language, which means that code must be placed in exact column locations in order to generate correct results.

There are eight different specification types, and separate coding forms are used to write each, and a special debugging template[3] used as an aid to read program printouts.

The language was extended to handle other input and output devices and provides a fast and efficient method of programming.

Third-party providers sold more than 200 different assembler subroutines that could be used by System/36 and Advanced/36 programmers to exceed RPG II limitations.

So if you had a lot of programming lines or had large arrays, it was easy to exceed the 64,000 bytes of object code.

In the System/36 implementation of RPG II, there are eight different specification (spec) types, that is a fixed-format line of text, 80 characters (bytes) in length, derived from the original use of punched card input for earlier IBM systems, like the System/3.

They matched and aligned with the then standard spacing of the text, as drawn from the original usage of punched cards: