PL/I

Infotaula de llenguatge de programacióPL/I
Tipusllenguatge de programació i llenguatge de programació procedural Modifica el valor a Wikidata
Data de creació1964 Modifica el valor a Wikidata
DissenyIBM Modifica el valor a Wikidata
DesenvolupadorIBM Modifica el valor a Wikidata
Paradigma de programacióprogramació procedimental, llenguatge imperatiu, programació estructurada i computació concurrent Modifica el valor a Wikidata
Influenciat perFortran, COBOL i ALGOL Modifica el valor a Wikidata
Pàgina webibm.com… Modifica el valor a Wikidata

PL/1, acrònim de Programming Language 1 (Llenguatge de Programació 1), fou proposat per IBM cap al 1970 per respondre simultàniament a les necessitats de les aplicacions científiques i comercials, disponible en les innovadores plataformes d'utilitat general IBM S/360 i més endavant IBM 370.

Aquest llenguatge tenia moltes de les característiques que més endavant adoptaria el llenguatge C i algunes de C++. Per desgràcia, IBM registrà el nom del llenguatge com una forma de mantenir el control sobre el seu desenvolupament, fet que va dissuadir a altres empreses a donar aquest nom a les seves implementacions. No sent possible trobar un únic llenguatge per diverses plataformes, els usuaris potencials del llenguatge van preferir no adoptar-lo a pesar de les seves múltiples innovacions, que incorporava multiprocesament, recursivitat, estructures de control modernes, facilitats per la posada a punt, assignació dinàmica d'espai per estructures de dades, procediments genèrics, etc.

Tot i això, dins dels usuaris d'IBM, el llenguatge s'utilitzà força. El sistema operatiu Multics va ser desenvolupat en PL/1.

PL/1 fou probablement el primer llenguatge comercial amb el compilador escrit en el mateix llenguatge que compilava.

Exemple de programa

Test: procedure options(main);
declare My_String char(20) varying initialize('Hello, world!');
put skip list(My_String);
end Test;

Estàndard

  • ANSI X3.74-1987 (R1998) Title: Information Systems - Programming Language - PL/I General-Purpose Subset

Vegeu també