A PL/1 az első olyan programnyelvek között volt, amelyiknél már megengedték a kötetlen írásmódot.
Persze ekkor is be kell tartani a nagyszámítógépeknél elterjedt rekordformátumokat, így minden sornak be kell férnie 71 karakterbe.
Minden sor első karakterét a fordítási direktívák jelzésére használja a compiler, ugyanis ha ott * jel szerepel,
akkor az a sor egy olyan kulcsszót fog tartalmazni, ami csak a fordítónak szól.
Ha pedig egy PL/1 utasítás hosszabb lenne ettől a megengedett kerettől, akkor a 72. oszlopban szerepelnie kell egy karakternek,
hogy a fordító a következő sort is hozzávegye.
A PL/1 programok leírására 60 jel közül választhatunk. Ezek az
angol ábécé 26 betűje, a számjegyek, valamint 24 egyéb jel: @, +, -, *, $, /, (,
), _, %, ; , ', :, >, <, =, ?, |, &, pont, vessző. Az azonosítók
betűkből, számjegyekből, és $, @, #, _ jelekből. állhatnak, de nem kezdődhetnek
számjeggyel és "_" jellel. Az azonosítók hossza nem lehet több 31 karakternél,
illetve EXTERNAL azonosító esetén 6 karakternél.
Megjegyzések a /* */ jelek közé rakható, ami a program bármely részére elhelyezhető.
A megjegyzések több sorosak is lehetnek az előbbi szabályt figyelembe véve, illetve fordítási direktívában megadható,
hogy egymásba ágyazhatók-e.
Minden programsor címkézhető, akár többszörösen is. A nyelv blokk- strukturáltságából következően blokkok is címkézhetők,
amikor a címke az egész blokkot fogja azonosítani. Az alprogramok azonosítása is így történik.
Alapszavak:
A nyelvben az alapszavak egy részének rövidített írásformája is van. A nyelv alapszavait,
és esetleges rövidítésüket tartalmazza az alábbi táblázat:
|
Alapszó
|
Rövidítés
|
Alapszó
|
Rövidítés
|
| ALIGNED | ALLOCATE | ||
| AUTOMATIC | AUTO | BASED | |
| BEGIN | BINARY | BIN | |
| BIT | BUFFERED | BUF | |
| BY | BY NAME | ||
| CALL | CHARACTER | CHAR | |
| CHECK | CLOSE | ||
| COLUMN | COL | CONDITION | |
| CONTROLLED | CTL | CONVERSION | CONV |
| COPY | DATA | ||
| DECIMAL | DEC | DECLARE | DCL |
| DEFINED | DEF | DIRECT | |
| DO | EDIT | ||
| ELSE | END | ||
| ENDFILE | ENTRY | ||
| ENVIRONMENT | ENV | ERROR | |
| EXTERNAL | EXT | FILE | |
| FIXED | FLOAT | ||
| FREE | GET | ||
| GO TO | GOTO | IF | |
| INITIAL | INIT | KEY | |
| KEYED | KEYFROM | ||
| LABEL | LIKE | ||
| LINE | LIST | ||
| LOCATE | MAIN | ||
| ON | OPEN | ||
| OPTIONS | OUTPUT | ||
| PAGE | PICTURE | PIC | |
| POINTER | PTR | PROCEDURE | PROC |
| PUT | READ | ||
| RECORD | RECURSIVE | ||
| RETURN | RETURNS | ||
| REWRITE | SEQUENTIAL | SEQL | |
| SET | SIGNAL | ||
| SKIP | STATIC | ||
| STOP | STEAM | ||
| STRING | SYSTEM | ||
| THEN | TO | ||
| UNALIGNED | UNAL | UNBUFFERED | UNBUF |
| UPDATE | VARYING | VARY | |
| WHILE | WRITE |