Answer 1.i

Up Answer 1i Answer 1ii Answer 2 Answer 3

The Question

Some commentators on the development of programming languages characterise their history as a linear progression from "first generation" languages (the machine languages of early computers), through second, third, fourth and fifth generations.
Explain and illustrate briefly how the concept of a "generation" is used to describe the history of programming language development.

 

The Answer

Generations of programming languages.

 When computers were first designed in the 1940’s they did not have a programming language, each function was wired through a patch board, a wire connected represented a 1 and a wire disconnected represented a 0, to change a program meant that wires had to be physically added or removed, this was very time consuming and the fault liability was immense, trying to rectify a fault was difficult as there were many of thousands of wires connected.

 In the 1950’s the first programming language was designed (this was and still is the first generation language or 1GL). It was called machine language (known as a low level code), which all computers use today. The instructions were written in values of memory using stings 1’s and 0’s. Although this was a vast improvement on the older hard wired programming it still took a long time to write and errors still took a long time to rectify.

 Between the late 1950’s and the early 1960’s the second generation of programming language (2GL) was designed, called assembler language (still a low level code). The instructions for this were written in mnemonic representation such as: ADD 12, 8 then it was converted into machine code to enable it to run on the computer.
Assembler language is very complex and to even do a simple task took a lot of writing but was still better to write than machine language.

 In the mid 1960’s the next generation of programming language (3GL) was designed, this was known as high level code, all of today’s programs are written in high level code.
High level code allowed programmers to use less detailed instructions to do more with each instruction which enabled them to write far larger and complex programs which did more.
High level code (source code) was then converted into machine language using a compiler enabling it to then be run on the computer.
The first examples of this third generation language were FORTRAN (formula translator) and COBOL (common business oriented language), FORTRAN was mainly used for scientific applications and COBOL was mainly used for business applications. Versions of FORTRAN and COBOL are in use today.
Java and C are also languages in this third generation.

 At present there is also have a fourth (4GL) and fifth (5GL) generation languages.
The fourth generation language (4GL) was designed to be very close to natural language and is mainly used in database programming because it’s so close to natural language it makes data retrieval much easier and quicker although its run inside a program who’s structure has been written in a third generation language.

 The fifth generation language (5GL) was designed to be graphical, it also works inside a program written in third generation language but enables programming to be achieved by dragging icons etc. around visually. Most Microsoft Windows programs us this type of language.

Reference:

C.S French, Computer Science (5th edition).
D.K Every, How Computer Languages Work (1999).
http://www.mackido.com/Dojo/Understanding_Languages.html
http://whatis.techtarget.com