Also found in: Acronyms.


This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)

fourth-generation language

A non-procedural programming language that requires less coding than lower-level languages. Command-line languages that come with operating systems and database management systems (DBMSs) are fourth-generation languages (4GLs), as are query languages and report writers. Any language with English-like commands that does not require traditional input-process-output logic falls into this category.

In addition, software tools that uses graphical interfaces for building applications or generating queries are also considered fourth generation. Underlying the menus and buttons are fourth-generation command structures that are activated with a click of the mouse.

First-, Second- and Third-Generation Languages
First-generation languages are binary machine languages. Second-generation languages are machine-dependent assembly languages, and third-generation languages (3GLs) are high-level programming languages, such as FORTRAN, COBOL, BASIC, Pascal, C/C++ and Java.

Many languages are actually a mix of both third- and fourth-generation languages. The following dBASE example shows the difference in syntax to open a customer file and display names and cities. In the 3GL language, the test for end of file and the loop to go back to the top and repeat the process are necessary. In second-generation languages, the specific screen columns must be identified. Contrast with non-procedural language. See compiler, machine language and assembly language.

dBASE                  dBASEProcedural             Non-Procedural3GL Language           4GL Language

 use customerFile       use customerFile
 do while .not. eof()   list name, city
   ? name, city
Copyright © 1981-2019 by The Computer Language Company Inc. All Rights reserved. THIS DEFINITION IS FOR PERSONAL USE ONLY. All other reproduction is strictly prohibited without permission from the publisher.
References in periodicals archive ?
4GLs. I worked on a project where a team of two created a project similar to the one already created for a different department.
Significantly, the bulk of the development work was done solely by the project team, consisting of just two full-time members, neither of whom had any prior experience with the RDBMS or 4GL package!
Version 9.1B of the Progress AppServer uses HTTP tunneling to communicate with the Progress WebClient and other 4GL clients through firewalls that often limit communications to HTTP.
Its says that its own component assembly products including Forte version 4, the XML-based Fusion EAI products including Conductor, and its forthcoming $200 SynerJ Java business process integration tool (for those who prefer Java over Forte 4GL) are the way that companies will be able integrate and extend applications.
Although there is some disagreement in the literature about what the term fourth generation languages means (some say what distinguishes these languages is that they are nonprocedural), here we take the position that a 4GL is a higher-level, problem-focused language.
* None of the systems had 4GL interfaces to relational, hierarchical, and flat-file databases.
A 4GL report designer enables users to build customized reports, both textual and graphical.
This is accomplished via Fourth Generation Language (4GL) tools that are part of the FoxPro 2.0 package.
Whether you are a firsttime buyer or considering the re >;placement of an existing automated system, you should be aware of the important advantages that a system written in a fourth-generation language (4GL) can offer over those written in the more familiar third-generation languages (3GL), such as Pascal, C, Cobol, and BASIC.
From a technical point of view, a 4GL is an automatic coding device that allows the computer to actually write the program.
A new version 4 of Natural for mainframes, Software AG's 4GL development platform for large-scale electronic-business applications, is now available.
Using existing GUI client code, the WebClient can run an application that provides scalable, high-performance architecture, while retaining its functionality Version 9.1B of the Progress AppServer user HTTP tunneling to communicate with the Progress WebClient and other 4GL clients through firewalls that often limit communications to HTTP.