Progress 4GL
From Wikipedia, the free encyclopedia
Progress 4GL is a 4GL programming language developed by Progress Software Corporation.
It uses an imperative style to do database access. Instead of using embedded SQL expressions, Progress 4GL uses "FOR EACH" expressions to query a database or single "FIND" expressions. Next to database access expressions there is a variety of expressions to define and control forms. The language contains IF..THEN..ELSE statements and DO...WHILE statements for flow control.
[edit] Recent developments
The 10.1A release of Progress offers basic support for object oriented constructs and with the advent of 10.1B the language has been renamed to the Progress ABL (Advanced Business Language) to better describe the actual usage of the 4GL language.
Progress are in research of a new User Interface for Progress applications. Based on .NET, this UI will be the interface of choice (on Windows) for years to come. The early talked about plan is to have a .Net UI rendered from pure Progress ABL (4GL) code. There would be a bridge of sorts between the Progress Runtime and a .Net runtime. The Progress code would call UI Objects in .Net and subscribe to the events that these .Net objects publish and run Progress code to handle the events. Progress have said (and demonstrated in early developer bits) this new UI running the older Progress UI in Combination. This will mean that Software Vendors that have a current GUI Application written in Progress won't have to rewrite their whole application to take advantage of the new interface, but will be able to implement it slowly, focusing on the most used/important or perhaps the screens that couldn't be done (or done easily) in the old UI. The 4GL also has the ability to run on UNIX/Linux environments in a character and web interface manner, as well as having interfaces to call Progress code from Java and Webservices.