PL/I (Programming Language One) wurde 1964 von IBM für die System/360-Baureihe entwickelt und sollte erstmals Wissenschaft und Wirtschaft in einer Sprache vereinen. Die Abkürzung wird „PL/I" geschrieben, die Alias-Schreibweise lautet pl1. PL/I ist blockstrukturiert, kennt mächtige Exception-Behandlung und läuft bis heute auf z/OS-Mainframes.
Erste Schritte
/* Klassisches Hello World in PL/I */
HELLO: PROCEDURE OPTIONS (MAIN);
DECLARE NAME CHAR(20);
PUT SKIP LIST ('Name?');
GET LIST (NAME);
PUT SKIP LIST ('Hallo, ' || NAME);
END HELLO;
Wichtige Konstrukte
PROCEDURE OPTIONS (MAIN)— Einstiegspunkt;BEGIN/ENDbilden BlöckeDECLARE— Variablen mit Attributen wieFIXED BINARY,CHAR(20)oderFLOAT; Felder laufen im Gegensatz zu C von1bisnDO WHILE/DO UNTIL— Schleifen mit Abbruchbedingung;DO I = 1 TO 10ON-Units — Exception-Handler (z.B.ON ENDFILE (DATEI) GO TO FERTIG;)STRUCTURE— Datensatztypen mit Feldern, Vorläufer moderner Records||— String-Verkettung;//für Kommentare,/* */für Blockkommentare
Praxis
PL/I kann mehrere Tasks starten (CALL ... TASK, WAIT, EVENT) und eignet sich für transaktionale Geschäftslogik im Mainframe-Umfeld. Die Built-in Functions (z.B. SUBSTR, INDEX, TRANSLATE) decken String- und numerische Verarbeitung ab.
Verwandte Einträge: ALGOL-Befehle (Vorbild der Blockstruktur), Fortran-Befehle (wissenschaftliche Seite), COBOL-Befehle (Geschäftsanwendungen), RPG-Befehle und Rexx-Befehle (weitere IBM-Sprachen).