English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

Can someone describe these types of languages and how they are different from 3GL or any other languages.

2006-06-11 23:34:55 · 2 answers · asked by faqsheepdog 2 in Computers & Internet Programming & Design

2 answers

Third-generation programming language
From Wikipedia, the free encyclopedia
Jump to: navigation, search
A third generation language (3GL) is a programming language designed to be easier for a human to understand, including things like named variables. A fragment might be:

let c = c + 2 * d
Fortran, ALGOL and COBOL are early examples of this sort of language. Most "modern" languages (BASIC, C, C++, Delphi, Java, and including COBOL, Fortran, ALGOL) are third generation. Most 3GLs support structured programming

***********************************************

Fourth-generation programming language
From Wikipedia, the free encyclopedia
(Redirected from 4GL)
Jump to: navigation, search
A fourth-generation programming language (abbreviated 4GL) is a programming language designed with a specific purpose in mind, such as the development of commercial business software. Such languages arose after the introduction of modern, block-structured third-generation programming languages, which improved the process of software development. However, it was still frustrating, slow, and error prone to program computers. This led to the first "programming crisis", in which the amount of work that might be assigned to programmers greatly exceeded the amount of programmer time available to do it. Meanwhile, a lot of experience was gathered in certain areas, and it became clear that certain applications could be generalized by adding limited programming languages to them.

The term 4GL was first used by James Martin in his 1982 book Applications Development Without Programmers to refer to non-procedural, high-level specification languages. Some believe the first 4GL was Ramis (see Ramis software) developed by Gerald C. Cohen at Mathematica, a mathematical software company. The term 4GL was used in the 60's. The great majority of 4GL users would describe themselves as programmers and most 4GLs allowed for (or required) system logic to be written in a proprietary macro language or a 3GL. Think of a 3GL or procedural language as describing how to do something and a 4GL as describing what you want done. No matter how good the 4GL might be, it is in effect a form of modeling and no model can cover all cases, so 3GL logic was required. In some primitive way, IBM's RPG could be described as the first 4GL.

All 4GLs are designed to reduce programming effort, the time it takes to develop software, and the cost of software development. They are not always successful in this task, sometimes resulting in inelegant and unmaintainable code. However, given the right problem, the use of an appropriate 4GL can be spectacularly successful.

A number of different types of 4GLs exist:

Report generators take a description of the data format and the report to generate and from that they either generate the required report directly or they generate a program to generate the report.
Similarly, forms generators manage online interactions with the application system users or generate programs to do so.
More ambitious 4GLs (sometimes termed fourth generation environments) attempt to automatically generate whole systems from the outputs of CASE tools, specifications of screens and reports, and possibly also the specification of some additional processing logic.
Data management 4GLs such as SAS, SPSS and STATA provide sophisticated commands for data manipulation, file reshaping, case selection and data documentation in the preparation of data for statistical analysis. These tools simplify programming by using a defined file structure of record (row) by variable (column) with data processing occurring for each record in turn. SPSS and SAS have been in continuous use (and development) since the 1970's.

Some 4GLs have integrated tools which allow for the easy specification of all the required information:

James Martin's own Information Engineering systems development methodology was automated to allow the input of the results of system analysis and design in the form of data flow diagrams, entity relationship diagrams, entity life history diagrams etc from which hundreds of thousands of lines of COBOL would be generated overnight.
More recently Oracle Corporation's Oracle Designer and Oracle Developer 4GL products could be integrated to produce database definitions and the forms and reports programs.
Fourth-generation languages have often been compared to Domain-specific programming languages (DSLs). Some researchers state that 4GLs are a sub-set of DSLs. [1]

[edit]
Some successful fourth-generation languages
Database query languages
FOCUS
Oracle PL/SQL
NATURAL
Progress 4GL
SQL
Report generators
BuildProfessional
GEMBase
IDL-PV/WAVE
LINC
Metafont
NATURAL
Oracle Reports
PostScript
RPG-II
S
Gauss
Mathematica
Data manipulation, analysis, and reporting languages
Clarion Programming Language
Ab Initio
ABAP
Aubit-4GL
DASL
FOCUS
GraphTalk
Informix-4GL
NATURAL
Nomad
Ramis
SAS
Synon
CorVision
LANSA
Data-stream languages
APE
AVS
Iris Explorer
Screen painters and generators
Oracle Forms
Unify Accell
GUI creators
4th Dimension (Software)
Delphi programming language
eDeveloper
MATLAB's GUIDE
Revolution programming language
Visual Basic's form editor
Windows Forms (part of the .NET Framework)
OpenROAD

2006-06-11 23:42:23 · answer #1 · answered by chrisrocks 2 · 0 0

A fourth-generation programming language (abbreviated 4GL) is a programming language designed with a specific purpose in mind, such as the development of commercial business software. Such languages arose after the introduction of modern, block-structured third-generation programming languages, which improved the process of software development. However, it was still frustrating, slow, and error prone to program computers. This led to the first "programming crisis", in which the amount of work that might be assigned to programmers greatly exceeded the amount of programmer time available to do it. Meanwhile, a lot of experience was gathered in certain areas, and it became clear that certain applications could be generalized by adding limited programming languages to them.

2006-06-12 01:19:52 · answer #2 · answered by programmer 4 · 0 0

fedest.com, questions and answers