PL/B
A business-oriented procedural language descended from Datapoint's DATABUS, designed for terminal-and-screen data processing and later standardized by ANSI as PL/B (Programming Language for Business).
Created by Datapoint Corporation
PL/B — short for Programming Language for Business — is a procedural, business-oriented programming language that began life in 1972 as Datapoint Corporation’s DATABUS. Conceived for the constrained minicomputers and terminal-and-screen workflows of early commercial data processing, it was eventually formalized as an ANSI standard (X3.238-1994) under the new name PL/B once Datapoint declined to release its trademark on the DATABUS name. Though far from a household name, PL/B has proven remarkably durable: decades of business applications written in it are still maintained and run on modern Windows, Unix, and Linux systems.
History & Origins
DATABUS was created by Datapoint Corporation in 1972 to solve a very practical problem. Datapoint’s machines were 8-bit minicomputers with tightly limited memory, and COBOL — the dominant business language of the day — simply would not fit. COBOL also lacked, at the time, good facilities for working with Datapoint’s built-in keyboard and screen, which were central to the company’s interactive, terminal-driven style of computing. Rather than shoehorn an ill-fitting language onto its hardware, Datapoint designed a compact, business-focused language of its own.
DATABUS was tightly bound to Datapoint’s broader ecosystem. The company’s DATASHARE environment provided multi-user support, letting several terminals share a single minicomputer running DATABUS programs — an arrangement well suited to the data-entry and transaction-processing needs of businesses in the 1970s. Datapoint also developed ARCNET (Attached Resource Computer NETwork) around 1977, frequently described as one of the earliest commercially available local area networks, to interconnect its systems.
As the personal-computer era arrived, DATABUS implementations were ported beyond Datapoint’s own hardware — reaching the MS-DOS world around 1983 — and a number of independent vendors began offering compatible compilers. This proliferation of dialects eventually motivated a formal standard.
Standardization
The effort to standardize the language began in December 1987, when a committee was organized and assigned the designation J15 by the X3 Standards Planning and Review Committee (SPARC) in January 1988. After years of meetings, the X3J15 committee’s work culminated in the acceptance of ANSI standard X3.238-1994 in December 1994. Because Datapoint retained its trademark on the DATABUS name, the standardized language was given a new, vendor-neutral name: PL/B (Programming Language for Business). The standard was reconfirmed in 1998.
Design Philosophy
PL/B was built around the realities of business data processing rather than computer-science generality. Its priorities reflect that focus:
- Screen, file, and string handling first. The language is, by design, exceptionally strong at terminal screen operations, file manipulation, and character-string processing — the bread and butter of interactive business applications.
- Safety through simplicity. PL/B is strongly and statically typed and has no pointers, removing an entire category of bugs and making programs easier to maintain over the long lifetimes typical of business software.
- Decimal arithmetic. Like COBOL, PL/B emphasizes decimal arithmetic, which matters for financial and accounting work where binary floating-point rounding is unacceptable.
- English-like readability. Vendors describe the language as high-level and English-like, intended to be approachable for business programmers maintaining commercial systems.
Key Features
- Bytecode model. Much like Java and .NET that came later, many PL/B implementations compile programs to an intermediate bytecode that is then executed by a runtime/interpreter library. This is what lets the same PL/B program run across MS-DOS, Unix, Linux, and Windows.
- Built-in data management. Implementations have long offered integrated file handling, including indexed (ISAM-style) and hashed access, suited to record-oriented business data.
- Strong typing without pointers. Variables have fixed types and there is no pointer arithmetic, favoring reliability and long-term maintainability.
- Decimal numeric processing. Native support for fixed-decimal arithmetic for currency and quantity calculations.
- Modern interoperability (vendor extensions). Contemporary commercial implementations have added access to SQL/ODBC databases, XML and JSON, and host-platform facilities, allowing decades-old codebases to talk to modern systems.
Evolution
PL/B’s evolution is best understood as a journey from a single-vendor proprietary language to a standardized, multi-vendor one. DATABUS started as Datapoint’s in-house solution, spread to other platforms as the language was reimplemented by third parties, and was finally codified by ANSI in 1994 — at which point it took the name PL/B. Since then, the language has been carried forward primarily by a handful of dedicated commercial vendors.
| Milestone | Approx. date |
|---|---|
| DATABUS created at Datapoint | 1972 |
| DATASHARE multi-user environment | mid-1970s |
| ARCNET networking | around 1977 |
| Ported to MS-DOS | around 1983 |
| ANSI J15 committee organized | December 1987 |
| ANSI X3.238-1994 (renamed PL/B) | December 1994 |
| Standard reconfirmed | 1998 |
Current Relevance
PL/B occupies the niche of a legacy-but-living business language. New greenfield projects rarely start in it, but a substantial body of existing accounting, inventory, and back-office software written in DATABUS/PL/B remains in production. That software is kept running by vendors such as DB/C Software (with its DB/C DX implementation) and Sunbelt Computer Software, which has supported PL/B programmers since 1980 and whose own compiler is written in PL/B. These vendors provide compilers and runtimes for Windows, Unix, and Linux, along with editor tooling, so that organizations can maintain and modernize their investments without rewriting them.
Why It Matters
PL/B is a quietly instructive piece of computing history. It shows how a hardware constraint — too little memory for COBOL — can give birth to an entire language, and how a vendor-specific tool can mature into a formal ANSI standard with a community of independent implementers. Its early use of a bytecode-plus-runtime model anticipated, by decades, the portability strategy later made famous by Java and .NET. And its longevity — applications written in the 1970s and 1980s still being maintained today — is a reminder that in the business world, durability and dependable maintenance often matter more than fashion.
Timeline
Notable Uses & Legacy
Datapoint DATASHARE systems
DATABUS was the application language for Datapoint's multi-user DATASHARE business systems in the 1970s and 1980s, powering order entry, accounting, and other transaction-processing tasks on terminal-connected minicomputers.
Sunbelt Computer Software
Sunbelt has written and sold system software for PL/B programmers since 1980, offering Windows and UNIX PL/B (DATABUS) compilers, runtimes, and utilities; notably, its PL/B compiler is itself written in PL/B.
DB/C Software
DB/C Software maintains DB/C DX, a widely used cross-platform implementation in the DATABUS/PL/B family, used to keep long-lived business applications running on modern operating systems.
Legacy vertical-market business applications
Many bespoke accounting, inventory, and back-office systems written in DATABUS/PL/B over the decades remain in production, maintained by firms that specialize in supporting the language.
Rosetta Code
PL/B has a catalogue of solutions on Rosetta Code, where it is used to demonstrate idiomatic answers to common programming tasks alongside many other languages.