From Wikipedia
A *fourth-generation programming language* (*4GL*) is a computer
<https://en.wikipedia.org/wiki/Computer> programming language
<https://en.wikipedia.org/wiki/Programming_language> envisioned as a
refinement of the style of languages classified as third-generation
programming language
<https://en.wikipedia.org/wiki/Third-generation_programming_language>
(3GL). Each of the programming language generations
<https://en.wikipedia.org/wiki/Programming_language_generations> aims to
provide a higher level of abstraction
<https://en.wikipedia.org/wiki/Abstraction_layer> of the internal computer
hardware <https://en.wikipedia.org/wiki/Computer_hardware> details, making
the language more programmer
<https://en.wikipedia.org/wiki/Programmer>-friendly,
powerful and versatile. While the definition of 4GL has changed over time,
it can be typified by operating more with large collections of information
at once rather than focus on just bits <https://en.wikipedia.org/wiki/Bit>
and bytes <https://en.wikipedia.org/wiki/Byte>. Languages claimed to be 4GL
may include support for database <https://en.wikipedia.org/wiki/Database>
management, report generation
<https://en.wikipedia.org/wiki/Report_generator>, mathematical optimization
<https://en.wikipedia.org/wiki/Mathematical_optimization>, GUI development
<https://en.wikipedia.org/wiki/Graphical_user_interface_builder>, or web
development <https://en.wikipedia.org/wiki/Web_development>.
Fourth-generation languages have often been compared to domain-specific
languages <https://en.wikipedia.org/wiki/Domain-specific_language> (DSLs).
Some researchers state that 4GLs are a subset of DSLs.[1]
<https://en.wikipedia.org/wiki/Fourth-generation_programming_language#cite_note-1>
[2]
<https://en.wikipedia.org/wiki/Fourth-generation_programming_language#cite_note-2>
I found another definition:
<<Quote>>
Often abbreviated *4GL,* fourth-generation languages are programming
languages <http://www.webopedia.com/TERM/P/programming_language.html>
closer to human languages <http://www.webopedia.com/TERM/L/language.html>
than typical high-level programming languages
<http://www.webopedia.com/TERM/H/high_level_language.html>. Most 4GLs
<http://www.webopedia.com/TERM/F/fourth_generation_language.html> are used
to access <http://www.webopedia.com/TERM/A/access.html> databases
<http://www.webopedia.com/TERM/D/database.html>. For example, a typical 4GL
command <http://www.webopedia.com/TERM/C/command.html>is
FIND ALL RECORDS WHERE NAME IS "SMITH"
<<End quote>>
Unfortunately the higher the level of language the less discrete control.
Kent
On Wed, Jul 1, 2015 at 2:03 PM, Tom Lang <
[log in to unmask]> wrote:
> It is very interesting that you have taken up this task.
>
> I read your article and have a gripe, in-as-much-as you use the term
> "Fourth Generation Language".
> (e.g. "Several Fourth Generation Language products (Powerhouse, Transact,
> Speedware, Protos) became available from third party vendors".)
>
> I am aware of Machine Code (First Generation) which is executable.
> I am aware of Assembler languages (Second Generation) which convert
> Assembler code into Machine Code for execution.
> I am aware of Compiler languages (Third Generation) which convert directly
> into Machine Code for execution.
>
> I have always challenged the term "Fourth Generation Language" because I
> am aware of none.
>
> There are 'products' (such as Powerhouse, Speedware, etc.) which make the
> claim to be a "4GL" but never has anyone given me a name, or explained to
> me what "Fourth Generation Language" the product is using, and where I can
> study this so-called language.
>
> There is a major difference between a product and a language.
>
> The Marketing Department at these companies have done such a stellar job
> that their 'jingle' seems to have remained, and now is ensconced in
> Wikipedia via your article.
>
> So will you name names and provide the names of the languages referred in
> your use of the term "Fourth Generation Language"?
>
> Kindest Regards,
> Tom.
>
> * To join/leave the list, search archives, change list settings, *
> * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
>
--
Thanks
Kent Wallace
425-306-8327
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|