|
Hi, These are some inventive definitions, but let's not erase the classic definitions of language levels--some of us wrote machine code and assembler source! Here is how Whatis.com defines 1GL/2GL/3GL/4GL/5GL: "In the computer industry, these abbreviations are widely used to represent major steps or "generations" in the evolution of programming languages. 1GL or first-generation language was (and still is) machine language or the level of instructions and data that the processor is actually given to work on (which in conventional computers is a string of 0s and 1s). 2GL or second-generation language is assembler (sometimes called "assembly") language. A typical 2GL instruction looks like this: ADD 12,8 An assembler converts the assembler language statements into machine language. 3GL or third-generation language is a "high-level" programming language, such as PL/I, C, or Java. Java language statements look like this: public boolean handleEvent (Event evt) { switch (evt.id) { case Event.ACTION_EVENT: { if ("Try me" .equald(evt.arg)) { A compiler converts the statements of a specific high-level programming language into machine language. (In the case of Java, the output is called bytecode, which is converted into appropriate machine language by a Java virtual machine that runs as part of an operating system platform.) A 3GL language requires a considerable amount of programming knowledge. 4GL or fourth-generation language is designed to be closer to natural language than a 3GL language. Languages for accessing databases are often described as 4GLs. A 4GL language statement might look like this: EXTRACT ALL CUSTOMERS WHERE "PREVIOUS PURCHASES" TOTAL MORE THAN $1000 5GL or fifth-generation language is programming that uses a visual or graphical development interface to create source language that is usually compiled with a 3GL or 4GL language compiler. Microsoft, Borland, IBM, and other companies make 5GL visual programming products for developing applications in Java, for example. Visual programming allows you to easily envision object-oriented class hierarchies and drag icons to assemble program components. Microbrew AppWare and IBM's VisualAge for Java are examples of 5GL "languages." " --Chapin Kaynor > Date: Wed, 22 Dec 1999 14:13:57 -0600 > From: "L. S. Russell" <leslier@datrek.com> > Subject: Re: text equation > >Fujitsu has a version of Fortran which implements objects. >And I disagree with you that, because languages have advanced to the current >level that langugages like dylan, algol, pascal, and oberon are now to be >considered low level languages. And where did you come up with the term mid >level? >Asm is a low level language because it lacks strong typing (I hope I dont start a >,thread on typing ! ) it also lacks builtin functions for string handeling, and >high math like abs(), cos() ... >We can say, I think, that a high level language is one which is most abstract and >bears the least obvious correspondence between the language syntactic structure >and the machine code. In this definition the NUMBER of machine instructions bears >no relevance. >A high level language is not called a high level language because it generates a >huge wad of machine code when compiled. It is so called because it it bears a >closer resemblance to human language than to machine language. There is no such > thing as a mid level language. pshaw! > >A 3GL is another level inserted between human readable language and and machine >readable. 3GL's are inserted between, lets say english and RPG (in the case of >AS/SET) and the 3GL generates NOT compiled machine code but pre-compiled RPG >(language code). This AS/SET (3GL) generated RPG is then compiled into machine >code. > >3GL's add a layer of abstraction if you want to call it that, in that a >programmer need not learn RPG, or C, or C++ in order to generate code in these >languages. >Jim Langston wrote: >> I tend to agree with this timeline, but you also have to >> look at the fact that in the 1960's Algol would of been >> considered a high level language, but if you take that same >>> Algol now it is considered quite a low level language. >> >> I think that the terms low, middle and high level are two >> abstract. I think that's where the generation terms came >> from. I remember in the 70's and 80's everyone was >> talking about 3rd generation languages that would come >> along soon. I guess they are here with OOPs and such. >> >> I think I was thinking more along the lines of 3rd generation >> languages being high level, 2nd generation being middle level, >> and 1st generation being low level. >> >> But heck, it's just not that simple anymore. Languages can >> just do so much and have so many differences maybe the >> concepts of low level and high level languages have become >> obsolete. Although everyone would agree that Assembly would >> be a low level language by any definition. >> >> Have we come to the age where assembly is low level, and all >> other programming languages are now high level? >> >> boldt@ca.ibm.com wrote: >> > > <SNIP> > > 1940's - bare hardware > > 1950's - operations were abstracted - Fortran > > 1960's - control structures were abstracted - Algol > > 1970's - data structures were abstracted - Pascal, C > > 1980's - module interfaces were abstracted - Modula > > 1990's - abstraction of objects - C++, Java > > <SNIP> > > Remember Delphi (Pascal), VB (Basic), and just about > every language that does objects now. Although I tend > to doubt if Fortran or Cobol does objects, and I've yet to > see an object in RPG. > > Does that mean RPG is stuck in the 80's? > > Regards, > > Jim Langston > >> +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.