|
Answer 1.i |
![]()
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.
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