Programming Language for Business
| Programming Language for Business | |
|---|---|
| Paradigm | Procedural, imperative |
| First appeared | 1972 |
| Typing discipline | Strong,[1] static |
| Filename extensions | .rl, .ps, .cb, .pls, .pgm |
| Major implementations | |
| DB/C DX, DATABUS, and PL/B | |
| Influenced by | |
| COBOL | |
Programming Language for Business or PL/B is a business-oriented programming language originally called DATABUS and designed by Datapoint in 1972[2] as an alternative to COBOL because Datapoint's 8-bit computers could not fit COBOL into their limited memory, and because COBOL did not at the time have facilities to deal with Datapoint's built-in keyboard and screen.
A version of DATABUS became an ANSI standard, and the name PL/B came about when Datapoint chose not to release its trademark on the DATABUS name.[3][4]
Functionality
Much like Java and .NET, PL/B programs are compiled into an intermediate byte-code, which is then interpreted by a runtime library. Because of this, many PL/B programs can run on MS-DOS, Unix, Linux, and Windows.[5] PL/B (Databus) is actively used all over the world, and has several forums on the Internet dedicated to supporting software developers.[citation needed]
PL/B has a database capability built-in with ISAM and Associative Hashed Indexes,[5] as well as functionality for working with ODBC, SQL, Oracle,[6] sequential, random access, XML and JSON files.[7]
PL/B also has the ability to access external routines through COM objects, DLLs and .NET assemblies. Full access to the .NET framework is built into many versions.[citation needed]
Several implementations of the language are capable of running as an Application Server like Citrix, and connecting to remote databases through a data manager.[citation needed]
Source code example
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 C_CUSTNO <> "MAG")
LOADMOD "filter"
PACK PASS_ID WITH "QED ",QED_ID1,BLANKS
MOVE " FILTER DISPLAY (F6) " TO PASS_DESC
SET C_BIGFLT
CALL RUN_FILT USING PASS_ID,PASS_DESC,"432"
UNLOAD "filter"
CLEAR THIS_FILTER
ENDIF
References
- ^ "Programming Language for Business". sysmaker.com. Retrieved 10 June 2016.
- ^ "J15 - Programming Language PL/B". sysmaker.com. Retrieved 10 June 2016.
- ^ "DB/C DX, DATABUS, and PL/B Overview". DBC Software. Retrieved 10 June 2016.
- ^ "ANSI Standard PL/B". mmcctech.com. Retrieved 10 June 2016.
- ^ a b "About PL/B". Sunbelt Computer Systems, Inc. Retrieved 10 June 2016.
- ^ "SQL Instructions". sunbelt-plb.com. Retrieved 2022-06-06.
- ^ "XDATA". sunbelt-plb.com. Retrieved 2022-06-06.