Page 209 - DCAP104_EXPOSURE_TO_COMPUTER_DISCPLINES
P. 209
Exposure to Computer Disciplines
Notes 10.2.4 Very High-Level Languages
Languages called very high-level languages are often known by their generation number, that is,
they are called fourth-generation languages or, more simply, 4GLs.
Definition: Will the real fourth-generation languages please stand up? There is no consensus about
what constitutes a fourth-generation language. The 4GLs are essentially shorthand programming
languages. An operation that requires hundreds of lines in a third-generation language such as
COBOL typically requires only five to ten lines in a 4GL. However, beyond the basic criterion of
conciseness, 4GLs are difficult to describe.
Characteristics: Fourth-generation languages share some characteristics. The first is that they
make a true break with the prior generation-they are basically non-procedural. A procedural
language tells the computer how a task is done: Add this, compare that, do this if something is
true, and so forth-a very specific step-by-step process. The first three generations of languages
are all procedural. In a nonprocedural language, the concept changes. Here, users define only
what they want the computer to do; the user does not provide the details of just how it is to be
done. Obviously, it is a lot easier and faster just to say what you want rather than how to get it.
This leads us to the issue of productivity, a key characteristic of fourth-generation languages.
Productivity: Folklore has it that fourth-generation languages can improve productivity by a
factor of 5 to 50. The folklore is true. Most experts say the average improvement factor is about
10-that is, you can be ten times more productive in a fourth-generation language than in a third-
generation language. Consider this request: Produce a report showing the total units sold for
each product, by customer, in each month and year, and with a subtotal for each customer. In
addition, each new customer must start on a new page. A 4GL request looks something like this:
TABLE FILE SALES
SUM UNITS BY MONTH BY CUSTOMER BY PRODUCT
ON CUSTOMER SUBTOTAL PAGE BREAK
END
Even though some training is required to do even this much, you can see that it is pretty simple.
The third-generation language COBOL, however, typically requires over 500 statements to fulfill
the same request. If we define productivity as producing equivalent results in less time, then
fourth-generation languages clearly increase productivity.
Downside: Fourth-generation languages are not all peaches and cream and productivity. The
4GLs are still evolving, and that which is still evolving cannot be fully defined or standardized.
What is more, since many 4GLs are easy to use, they attract a large number of new users, who
may then overcrowd the computer system. One of the main criticisms is that the new languages
lack the necessary control and flexibility when it comes to planning how you want the output to
look. A common perception of 4GLs is that they do not make efficient use of machine resources;
however, the benefits of getting a program finished more quickly can far outweigh the extra costs
of running it.
Benefits: Fourth-generation languages are beneficial because
They are results-oriented; they emphasize what instead of how.
They improve productivity because programs are easy to write and change.
They can be used with a minimum of training by both programmers and nonprogrammers.
They shield users from needing an awareness of hardware and program structure.
202 LOVELY PROFESSIONAL UNIVERSITY