Benutzer:Zerodreamer/PL1
Programming Language One, oft als PL/I (auch PL/1, PL1 oder PLI) abgekürzt ist eine Programmiersprache, die in den 1960er-Jahren von IBM entwickelt wurde. Die Bezeichnung PL/1 ist vor allem in Deutschland gebräuchlich.
Entwicklungsgeschichte
Ursprünglich wurde PL/I unter dem Namen NPL (New Programming Language) als eine allgemeine Programmiersprache für alle Anwendungsgebiete entwickelt. Es wurde versucht, die Vorteile aller bis dahin bestehenden Hochsprachen (insbesondere ALGOL, Fortran und COBOL) zu vereinigen. Ebenso war es ein Ziel, die dynamische Speicherverwaltung von Assembler vereinfacht in PL/I zu integrieren.
Eigenschaften
Kritiker der Sprache unterstellten PL/I, dass es leider nur gelungen sei, die Nachteile der verschiedenen Vorbilder zu vereinen. Bei naturwissenschaftlich-technischen Programmierern galt es als kaufmännisch, bei kaufmännischen Anwendern als naturwissenschaftlich-technisch. Anhänger weisen auf die Vorteile hin:
- Syntax mit freiem Format
- Schlüsselwörter sind nicht abhängig von Groß- oder Kleinschreibung
- Viele eingebaute Funktionen
- Unterstützt strukturierte Programmierung
- Unterstützt rekursive Programmierung
- Datentypen sind hardwareunabhängig
- Dynamische Speicherverwaltung
- Eventhandling
Implementierungen
PL/I war und ist bei einigen großen IBM-Anwendern Hausprogrammiersprache. Multics wurde in PL/I geschrieben.
Abkömmlinge des PL/I sind PL/M (für Mikrocomputer; große Teile von CP/M wurden in PL/M geschrieben) und PL/S (IBM-interne Programmiersprache für Systemsoftware).
PL/I wird vorwiegend auf IBM-Großrechnern eingesetzt, es existieren aber auch Varianten für Windows, OS/2, AIX und andere Unix-Varianten.
Gegenüber den später entwickelten Sprachen wie Pascal kennzeichnete die gesamte PL/I-Sprachfamilie (wie auch schon die Vorläufer aus dem ALGOL-Zoo), dass Datenstrukturen zwar als konkrete Elemente angegeben werden konnten, aber praktisch keine Sprachelemente für die Definition von Struktur-Typen existierten. In der neuesten Generation von PL/I der Fa. IBM, Enterprise PL/I, können auch abstrakte Datentypen verwendet werden.
Programmbeispiel Hallo Welt
Hallo: proc options(main);
put list ('Hallo Welt!');
end Hallo;
Siehe auch
Literatur
- E. Sturm: Das neue PL/I, 7. Auflage. Vieweg-Verlag 2007. ISBN 978-3-8348-0520-1
- Wirtz, Klaus Werner: Einführung in PL/1 für Wirtschaftswissenschaftler, 3. Aufl., München, Wien: Oldenbourg 1989. ISBN 3486256416
- Grund, Friedrich; Issel, Walter: PL/I-Programmierung, 5. Aufl., Berlin: Deutscher Verlag der Wissenschaften 1990. ISBN 3326000219