Programmeringsspråk för företag
Paradigm | Procedurmässigt , imperativt |
---|---|
Dök först upp | 1972 |
Maskinskrivningsdisciplin | Stark , statisk |
Filnamnstillägg |
.rl , .ps , .cb , .pls , .pgm
|
Stora implementeringar | |
DB/C DX, DATABUS och PL/B | |
Influerad av | |
COBOL | |
|
Programming Language for Business eller PL/B är ett affärsinriktat programmeringsspråk som ursprungligen hette DATABUS och designades av Datapoint 1972 som ett alternativ till COBOL eftersom Datapoints 8-bitars datorer inte kunde passa COBOL i deras begränsade minne, och eftersom COBOL inte kl. tiden har möjligheter att ta itu med Datapoints inbyggda tangentbord och skärm.
En version av DATABUS blev en ANSI- standard och namnet PL/B kom till när Datapoint valde att inte släppa sitt varumärke på DATABUS-namnet.
Funktionalitet
Ungefär som Java och .NET , kompileras PL/B-program till en mellanliggande byte-kod , som sedan tolkas av ett runtime-bibliotek. På grund av detta kan många PL/B-program köras på operativsystemen DOS , Unix , Linux och Windows . PL/B-utvecklingsmiljöerna påverkas av Java och Visual Basic och erbjuder många av samma funktioner som finns på dessa språk. PL/B (Databus) används aktivt över hela världen och har flera forum på Internet dedikerade till att stödja mjukvaruutvecklare.
Sedan starten har PL/B förbättrats och anpassats för att hålla den moderniserad och kunna komma åt olika datakällor. Den har en inbyggd databaskapacitet med ISAM och Associative Hashed Index, såväl som ODBC , SQL , Oracle , sekventiell, slumpmässig åtkomst, XML- och JSON- filer.
Alla konstruktioner av moderna programmeringsspråk har lagts till stegvis till språket. PL/B har också möjlighet att komma åt externa rutiner genom COM, DLL:er och .NET -sammansättningar. Full tillgång till .NET -ramverket är inbyggt i många versioner.
Flera implementeringar av språket kan köras som en applikationsserver som Citrix , och ansluta till fjärrdatabaser via en datahanterare.
Exempel på källkod
IF (DF_EDIT[ITEM] = "PHYS") STATESAVE MYSTATE IF (C_F07B != 2) DISPLAY *SETSWALL 1:1:1:80: *BGCOLOR=2,*COLOR=15: *P49:1," 7-Find " ELSE DISPLAY *SETSWALL 1:1:1:80: *BGCOLOR=7,*COLOR=0: *P49:1," 7-Find " ENDIF STATEREST MYSTATE TRAP GET_PRO NORESET IF F7 ENDIF IF (SHOW_FILTER AND THIS_FILTER AND THIS_CUSTNO AND > "MAG") LOADMOD "filter" PACK PASS_ID MED "QED ",QED_ID1,TOMMA FLYTTA " FILTERDISPLAY (F6) " TILL PASS_DESC STÄLL IN C_BIGFLT CALL RUN_FILT MED PASS_ID,PASS_DESC,"432" LADDA UNDER "FILTER"_FILEARTER "ENDIS"_FILEARTER