PL/I
PL/I (skraćenica za "Programming Language One" — izgovor: pi-el-van) je proceduralni, imperativni programski jezik, dizajniran za naučne, inženjerske i poslovne sistemsko programirane aplikacije. Korišten je od strane raznih akademskih, komercijalnih i industrijalnih organizacija od kako je bio uveden 1960ih.
PL/I | |
---|---|
Programska Paradigma | proceduralna, imperativna, strukturalna |
Pojavio se | 1964. |
Tvorac | IBM i komitet za razvoj jezika SHARE |
Razvijač | IBM |
Dijalekti | PL/M, XPL, PL/P, PL/C, PL/S, PL/AS, PL/X, PL/8, EPL |
Utjecali | COBOL, Fortran, ALGOL |
Utjecao na | SP/k, B, REXX, AS/400 Control Language |
PL/I-ova glavna polja korištenja su procesiranje podataka, numerička analiza, naučno računanje, i sistemsko programiranje. Podržaje rekurziju, strukturalno programiranje, upravljanje podacima povezanih struktura, brojeve sa pomičnim i nepomičnim zarezom, kompleksne brojeve, i upravljanje simbolima i bitovima niza. Sintaksa jezika je slična engleskom i odgovara za specificiranje kompleksnih oblika za podatke, a također uključuje širok skup funkcija sa kojim je moguće ove podatke provjeriti i manipulisati.
Historija
urediTokom 1950-ih i ranih 1960-ih poslovni i naučni korisnici su programirali za različit računarski hardver koristeći različite programske jezike. Poslovni korisnici su prelazili sa asemblera Autocoder preko COMTRAN-a na COBOL, dok su naučni korisnici programirali preko generalnog interpretativnog programa (General Interpretative Programme - GIP), Fortran-a, ALGOL-a, GEORGE-a, i drugih programskih jezika. IBM System/360[1] (najavljen 1964. ali tek isporučen 1966.) je dizajniran kao opšta mašinska arhitektura za obje grupe korisnika, smijenjujući sve postojeće IBM arhitekture. IBM je također htio da napravi jedan programski jezik za sve korisnike. Kompanija je se nadala proširiti Fortran tako da ono uključuje sve karakteristike tražene od strane komercijalnih programera. U oktobru 1963. osnovan je komitet[2] koji je se stastojao od 3 IBM-ovca iz New Yorka i 3 člana iz SHARE grupe, sa ciljem da se predlože nova proširenja. Uz data ograničenja Fortran-a, ovaj cilj nisu uspjeli ostvariti što je rezultiralo pravljenjem “novog programskog jezika” zvanog "NPL" (New Programming Language), bazirajući se široko na ALGOL. Ovaj akronim je bio u konfliktu sa imenom nacionalne fizičke laboratorije (National Physical Laboratory) u Velikoj Britaniji te je zato bio privremeno preimenovan u MPPL (MultiPurpose Programming Language), i kasnije 1965. na PL/I (sa rimskim brojem “I”). Prva definicija PL/I-a je se pojavila u aprilu 1964.[3][4]
Primjeri
urediPozdrav svijete
urediHello2: proc options(main);
put list ('Pozdrav svijete!');
end Hello2;
Pretraga niza
uredi/* Učitaj jedan red koji sadrži neki niz,
/* i onda izbaci sve slijedeće redove koji sadrže ovaj niz. */
find_strings: procedure options (main);
declare pattern character (100) varying;
declare line character (100) varying;
declare (line_no, end_file) fixed binary;
end_file = 0;
on endfile (sysin) end_file = 1;
get edit (pattern) (L);
line_no = 1;
do while (end_file = 0);
if index(line, pattern) > 0 then
put skip list (line_no, line);
line_no = line_no + 1;
get edit (line) (L);
end;
end find_strings;
Također pogledajte
urediLiteratura
uredi- Barnes, R.A. (1979). PL/I for Programmers. North-Holland.
- Hughes, J.K. (1986). PL/I Structured Programming (3rd izd.). Wiley. ISBN 0-8053-0051-1.
- Groner, G.F. (1971). PL/I Programming in Technological Applications. Books on Demand, Ann Arbor, MI.
- Anderson, M.E. (1973). PL/I for Programmers. Prentice-Hall.
- Stoutemyer, D.R. (1971). PL/I Programming for Engineering & Science. Prentice-Hall.
- Ziegler, R.R. & C. (1986). PL/I: Structured Programming and Problem Solving (1st izd.). West. ISBN 0-314-93915-6. Referenca sadrži prazan nepoznati parametar:
|coauthors=
(pomoć) - Sturm, E. (2009). The New PL/I ... for PC, Workstation and Mainframe. Vieweg-Teubner, Wiesbaden, Germany. ISBN 978-3-8348-0726-7.
- Vowels, R.A. Introduction to PL/I, Algorithms, and Structured Programming (3rd izd.). ISBN 0-9596384-9-0.
- Sturm, E. (2009). The New PL/I ... for PC, Workstation and Mainframe. Vieweg-Teubner, Wiesbaden, Germany. ISBN 978-3-8348-0726-7.
- Abrahams, Paul (1979). The PL/I Programming Language (PDF). Courant Mathematics and Computing Laboraory, New York University.
Reference
uredi- ^ IBM's 360 and Early 370 Systems, Emerson W. Pugh, Lyle R Johnson, John H Palmer, MIT Press, 1991
- ^ Komitet je se sastojao od 8 članova kada je raport bio izdan. Oni su bili:
- Hans Berg, Lockheed Burbank.
- George Radin, IBM.
- James Cox, Union Carbide.
- Bruce Rosenblatt, Standard Oil of California, predsjednik.
- Douglas McIlroy, Bell Laboratories.
- Robert Sheppard, Procter & Gamble. Iz organizacije GUIDE.
- C.W. Medlock, IBM.
- Bernice Weitzenhoffer, IBM.
- ^ Report II of the SHARE Advanced Language Development Committee, 25. juni, 1964.
- ^ Highlights of a New Programming Language, G.Radin and H.Paul Rogoway Communications of the ACM V8 Broj 1, jan. 1965.
Vanjski linkovi
uredi- (en) IBM PL/I kompajleri za z/OS, AIX, MVS, VM i VSE
- (en) Iron Spring Software, PL/I za Linux i OS/2
- (en) Kednos PL/I za OpenVMS i Tru64
- (en) "Micro Focus’ Mainframe PL/I Migration Solution"
- (en) OS PL/I V2R3 gramatika, verzija 0.1
- (en) PL/I for GCC, Prednji kraj PL/I-a za projekat GNU Compiler Collection
- (en) Pliedit, PL/I uređivač za Eclipse
- (en) "Power vs. Adventure - PL/I and C", usporedba PL/I-a i C-a.
- (en) "The Compilerator"[mrtav link], online PL/I kompajler za eksperimentisanje.