OpenEdge (Progress 4GL)
Progress Software's English-like fourth-generation language with a tightly integrated relational database, powering enterprise business applications for over four decades.
Created by Data Language Corporation (Joseph Alsop, Clyde Kessel, Mary Szekely, Chip Ziering)
OpenEdge ABL — historically known as Progress 4GL — is a strongly typed, English-like fourth-generation language built around a tightly integrated relational database. For more than four decades it has been a quiet workhorse of enterprise software, letting small teams build and ship complete data-driven business applications without stitching together a separate language, database, and data-access layer.
History & Origins
Data Language Corporation (1981)
The language was designed in 1981 at Data Language Corporation (DLC), a company founded the same year by Joseph Alsop, Clyde Kessel, Mary Szekely, and Chip Ziering. Joe Alsop served as the company’s longtime CEO. The “DLC” name survives to this day as the default installation directory for Progress and OpenEdge products.
From the outset the product paired a programming language with its own integrated database, deliberately designed to be architecture-independent so applications could move across the many minicomputer and Unix platforms of the era without rewrites.
From DLC to Progress Software
In 1987 the company renamed itself Progress Software, after its flagship product. In 1991 Progress Software completed an initial public offering and listed on the NASDAQ exchange under the ticker symbol PRGS, where it trades today.
Rebranding as OpenEdge (2000s)
The OpenEdge platform branding arrived with version 10: OpenEdge 10.0A shipped in late 2003, followed by 10.0B in 2004. In 2006 Progress officially renamed the language itself from “Progress 4GL” to “OpenEdge Advanced Business Language” (OpenEdge ABL) — a move widely understood as an effort to counter the industry perception that 4GLs were less capable than mainstream third-generation languages.
Design Philosophy
Progress ABL was built on a few durable ideas:
- The database is part of the language. Database access is a first-class language construct rather than an embedded-SQL afterthought. Tables, record buffers, transactions, and queries are written directly in ABL syntax with full awareness of the schema.
- Record-based, not result-set-based. ABL processes data record by record (for example,
FOR EACH Customer:), in contrast to the set-oriented processing of traditional SQL languages. This data-centric model maps naturally onto business reporting and transaction logic. - Readable, English-like keywords. Statements such as
DEFINE VARIABLE,DISPLAY, andFOR EACHmake programs approachable and self-documenting. - Architecture independence. The same application source could be deployed across a wide range of operating systems, a major selling point in the heterogeneous Unix and Windows world of the 1980s and 1990s.
A First Look
The idiomatic Hello World is a single statement:
| |
A short example shows the data-centric style, iterating over database records and displaying them in a screen frame:
| |
Here FOR EACH walks the Customer table directly — no connection objects or query-result cursors required — and NO-LOCK controls record locking. The DISPLAY statement renders fields into a frame, ABL’s unit of screen layout for both character (CHUI) and graphical (GUI) interfaces.
Key Features
Integrated Database
The Progress/OpenEdge RDBMS is the platform’s signature feature. Because the language is schema-aware, developers reference tables and fields by name with compile-time checking, wrap logic in transaction blocks (DO TRANSACTION: ... END.), and rely on built-in buffering and locking — all without a separate data-access framework.
DataServers
Introduced around Version 6, DataServers let ABL applications read and write non-Progress databases (such as Oracle and Microsoft SQL Server) using the same record-based language constructs, broadening where Progress applications could be deployed.
Procedural and Object-Oriented Styles
ABL began as a procedural language organized around internal and external procedures. Object-oriented programming — classes, inheritance, interfaces — was added in OpenEdge 10.1, and the two styles can be mixed within an application, letting legacy procedural code coexist with newer class-based design.
Application Server Components
- Classic AppServer — the original server for hosting ABL business logic and serving it to remote clients.
- WebSpeed — a long-standing component for building web and transaction applications in server-side ABL.
- PASOE (Progress Application Server for OpenEdge) — the modern, Tomcat-based application server that first appeared in the OpenEdge 11.x line (reportedly in 11.5) and became the standard in the 12.x line, superseding the classic AppServer.
Evolution
| Era | Release | Notable additions |
|---|---|---|
| 1981 | Designed at DLC | Language + integrated database |
| 1989 | Version 6 | DataServers for foreign databases |
| 1991 | Version 7 | Graphical user interface support |
| 1995 | Version 8 | Expanded development toolset |
| 1998 | Version 9 | Dynamic queries, ADM2 framework (last “Progress 4GL”) |
| 2003–2004 | OpenEdge 10.0 | OpenEdge platform branding |
| 2005 | OpenEdge 10.1 | Object-oriented ABL |
| 2012 | OpenEdge 11.0 | PASOE arrives in the 11.x line (11.5) |
| 2019 | OpenEdge 12.0 | Modernized runtime and app server |
| 2024 | OpenEdge 12.8 | Long-Term Support release |
Version-specific years for the older releases are drawn from community lifecycle records and Progress documentation; individual minor-release dates should be treated as approximate.
Current Relevance
OpenEdge is actively developed and supported by Progress Software Corporation (NASDAQ: PRGS). The latest Long-Term Support release, OpenEdge 12.8, shipped in January 2024, and the 12.x line continues to receive maintenance. According to Progress’s platform documentation, OpenEdge runs on Microsoft Windows and on Linux distributions, with a long history of support across commercial Unix platforms; for an exact, current operating-system matrix, the authoritative source is the official OpenEdge Platform & Product Availability Guide.
The platform’s center of gravity remains the large base of mission-critical business applications written in ABL — most visibly QAD’s ERP suite, but also countless mid-market manufacturing, distribution, financial-services, and logistics systems. These applications, often maintained for decades, give OpenEdge the kind of longevity associated with COBOL: not fashionable, but deeply embedded in the operations of the businesses that depend on it.
Why It Matters
OpenEdge (Progress 4GL) is a case study in the productivity promise of the fourth-generation language movement. By folding the database, the data-access layer, the UI framework, and the programming language into a single coherent environment, it let modest teams deliver complete enterprise applications — and then keep them running, and evolving, for thirty or forty years. Its survival into the 2020s, still commercially supported and still underpinning major ERP platforms, is a reminder that a well-integrated, business-focused toolset can outlast many of the more celebrated languages that came and went around it.
Key Takeaways
- 40+ years old and still actively developed by Progress Software.
- The database is built into the language — record-based access, not embedded SQL.
- English-like 4GL syntax with constructs like
FOR EACHandDISPLAY. - Procedural roots plus object-oriented ABL since OpenEdge 10.1.
- Renamed Progress 4GL → OpenEdge ABL in 2006, with OpenEdge branding from 2003–2004.
- Powers QAD ERP and a broad base of enterprise manufacturing, finance, and logistics applications.
Timeline
Notable Uses & Legacy
QAD ERP
QAD's manufacturing ERP products (MFG/PRO and QAD Enterprise/Standard Edition) are built in Progress ABL and run on the OpenEdge database, serving global manufacturers.
Manufacturing & Supply Chain
Widely used for ERP, warehouse management, and transportation/logistics systems where the bundled database and 4GL lowered development cost.
Financial Services
Powers mortgage and auto-loan origination systems and related back-office business applications.
Retail & Distribution
Used to build point-of-sale, inventory, and distribution applications for mid-market enterprises.
Reservation Systems
Historically used for rental-car reservation and other transaction-heavy booking systems.