Different Generations of Programming languages

FIRST GENERATION: MACHINE LANGUAGE

This concept is precisely connected to the advances in technology that brought about different generations of the computer.

 

I Generation languages (1950 –Machine Level Language / Low level language / Binary Language):-

 

In this language all the instructions are understood by the system. These programs are executed very quickly and efficiently. Since it is directly executed by the CPU. These languages are machine languages. To write programs in these languages the system technology must be required. The data is Non-portable. That means a program written in a system does not work in     another systems.

 

Advantage:

The main advantage of machine language is that the code can run very fast and efficiently, since it is directly executed by the CPU.

Disadvantage:

·         However, this language is difficult to learn and is far more difficult to edit if errors occur. Moreover, if new instructions are to be added into memory at some location, then all the instructions after the insertion point would have to be moved down to make room in memory to accommodate the new instruction.

·         Also code written in machine language is not portable.

·         It is very difficult to write the programme and to portability.

II Generation Language (Mid 1950 –Assembly level language):-

 

            It uses symbolic codes also known as mnemonic codes which are easy to remember abbreviations rather than numbers. EX:- STORE,SUB,ADD,DIV,MOVE

Assembler is used to convert assembly level language into machine level language.

·          It is easier than machine level language.

·          It   doesn’t   support   portability.

·         These Are Assembly Languages. This Are Also system oriented that means to write any program in a system that system’s technology must be required and data is non-portable.  But they used MNEMONIC words in programs. That means they used a single word instead of more words.

Advantages:

 

à    it is easier than machine level language.

à    it   doesn’t   support   portability.

III Generation Language (1960-1970 –High Level language):-

These language syntaxes are more like human language.

To converting high level languages into machine code special programs are used called compiler and interpreter.

·         It is a refinement of 2GL which spurred the great increase in data processing that occurred in the 1960s and 1970s. In these languages, the program statements are not closely related to the internal characteristics of the computer and are therefore often referred to as high-level languages.

·         Generally, a statement written in a high-level programming language will expand into several machine language instructions.

·         Languages and machine languages. 3GL includes languages like FORTRAN and COBOL.

·         A translator is needed to translate the instructions written in high level language into computer-executable machine language. Such translators are commonly known as interpreters and compilers.

 

·         3GLs makes it easier to write and debug a program and gives the programmer more time to think about its overall logic. The programs written in such languages are portable between machines.

 

IV Generation Language (1970-1980 very high level language):-

4GLs are nonprocedural languages. When writing code using a procedural language, the programmer has to tell the computer how a task is done. In striking contrast, while using a nonprocedural language the programmers define only what they want the computer to do, without supplying all the details of how it has to be done.

Characteristics of 4GLs include:

The code is written in English-like sentences; the code is easier to maintain4GL code enhances the productivity of the programmers as they have to type fewer lines of code to get something done. A typical example of a 4GL is the (SQL) Structured query language that allows a user to request information from a database with precisely worded English-like sentences.

4GLs are still evolving and it’s only down side is that it does not make efficient use of machine’s resources. However, the benefit of executing a program fast and easily far outweighs the extra costs of running it.

It is easier than 3GL 4 GL used to either text environment or visual environment. in text environment, the programmer uses English like words generating source code.

In visual environment the programmer uses a toolbar to     design screens. EX:- .NET, authoring environment, sun studio.

For high level languages we have to use translators to translate the source code written in general English language into machine language. These translators are two types.

1) Interpreters,  2) Compilers.

1) Interpreter: it translates the source code step by step into machine language until any error. If there is any error it stops and shows some message. After correction it can continue.

Ex:  BASIC, DBase III+, ....

2) Compilers :it translators translate the entire source code into machine language when it is error-free and creates an object file in machine language. If there is any error it shows the list of error. After debugging it creates the object file.

Ex: COBOL, C, C++, ...

V Generation Language :-

5GLs are widely used in artificial intelligence research.

in 5GLs problems are solved using constraints given to the program rather than using an algorithm written by programmer.

EX:-  prolog, LISP,OPS5

WWW languages:- used to create web pages. Ex:- HTML,DHTML,XSL, XHTMLMP, ASP,JSP etc.

Comments

Popular posts from this blog

COMPUTER SCIENCE TUTORIALS

JAVA NOTES

JAVA NOTES