RPG (programmeringsspråk)
RPG (Report Program Generator) är ett programmeringsspråk vars syntax ursprungligen liknade kommandospråket för IBM :s mekaniska tabulatorer . Designad för att underlätta övergången av ingenjörer som underhållit dessa tabulatorer till ny utrustning och dataöverföring, den implementerades ursprungligen för IBM 1401. Används i stor utsträckning på 1960- och 1970 -talen .
Den vanligaste versionen av språket verkar ha varit RPG II.
IBM fortsätter att stödja språket för närvarande, eftersom det skrivs en enorm mängd kod i det, vilket är olönsamt att översätta till andra programmeringsspråk.
RPG IV-versionen släpptes 2001 och introducerade element av objektprogrammering.
Förutom IBM stordatorer och AS/400 -maskiner har RPG implementerats på Digital VAX , Sperry Univac BC/7, Univac system 80, Siemens BS2000, Burroughs B1700, Hewlett Packard HP3000, ICL 2900 series, Honeywell 6220, IBM WANG, PC- plattformar ( DOS ).
En tredje parts Visual RPG-kompilator ger stöd för Windows och GUI . Det finns även implementeringar för OpenVMS och andra mer exotiska plattformar.
Exempelkod
* "F" (fil) specifikationer definierar filer och andra i/o-enheter
FARMstF1 UF EK Disk Rename (ARMST: RARMST)
* "D"-specifikationer används för att definiera variabler och parametrar
* "Prototypen" för programmet finns i en separat fil
* tillåter andra program att anropa det
/copy custom_pr
* "Procedurgränssnittet" beskriver *ENTRY-parametrarna
D getCustInf PI
DpCusNo 6p 0 konst
D pNamn 30a
DpAddr1 30a
DpAddr2 30a
DpCity 25a
D pTillstånd 2a
D pZip 10a
/fri
// Kommandot "chain" används för slumpmässig åtkomst av en nyckelfil
kedja pCusNo ARMstF1;
// Om en post hittas, flytta fält från filen till parametrar
om hittad;
pName=ARNm01;
pAddrl = ARAd01;
pAddr2 = ARAd02;
pCity=ARCy01;
pState=ARSt01;
pZip=ARZp15;
endif;
// RPG använder sig av switchar. En strömbrytare "LR" stod ursprungligen för "senaste rekordet"
//LR flaggar faktiskt programmet och dess datautrymme som borttagbart från minnet.
*InLR = *På;
/slutfri
Litteratur
- 9PAC, rapportgenerator (inte tillgänglig länk) . History of Programming Languages (HOPL), Murdoch University, AU (2006). Hämtad 1 april 2008. Arkiverad från originalet 24 december 2010. (obestämd)
- RPG, rapportprogramgenerator (inte tillgänglig länk) . History of Programming Languages (HOPL), Murdoch University, AU (2006). Hämtad 1 april 2008. Arkiverad från originalet 15 april 2011. (obestämd)
- DuCharme, Bob Dra ut data från datorer i mitten av tjugonde och början av tjugoförsta århundradet (26 februari 2006). Hämtad 1 april 2021. Arkiverad från originalet 14 maj 2008. (obestämd)
- Cozzi, Robert The Modern RPG IV Language (1996). Hämtad 1 april 2021. Arkiverad från originalet 3 november 2012. (obestämd)
- Shelly, Gary B. Introduktion till datorprogrammering RPG / Gary B. Shelly, Thomas J. Cashman. - Fullerton, Kalifornien: Anaheim Publishing Company, 1977. - ISBN 0-88236-225-9 .