History of the Paradigms (1°— 5" GL)
In the beginning, there was binary. The CPU was fed
with code in binary and that was the only thing it
understood. Binary was like nutrients. Now, they
still understand only binary... but now, they can be
fed with a wider variety of foods (programming
languages). These foods however, have to be
digested into nutrients (translated) before the
computer can use them. Let’s look at the evolution
of the programming languages and how they fed the
CPU with information.
1. First Generation Programming Language
(1GL)
1GL is a machine-level programming language
which was written in 1’s and 0's. 1GLis referred
to as low-level language. The code, being
binary, could be understood and used directly
by a CPU as it is the native language of the CPU.
This eliminated the need for compilers or
translators. Programs written in 1GL ran very
fast and efficiently as they were directly
executed by the CPU. Because everything had
to be specified in 1GLs and all code was written
in 1’s and 0’s, these languages were very
difficult to learn. Because of the plethora of 1’s
and 0's, it was also difficult to detect and
correct errors in 1GL programs. 1GL programswere also machine dependent and as such
were not portable, that is, they could only be
executed on the computer they were written
on. :
. Second Generation Programming Languages
(2GL)
2GL comprised of assembly languages which
used code written using mnemonics to
represent low-level machine operations. 2GLs
are also referred to as low-level languages. The
code is symbolic and must consequently be
translated to machine language so the
computer can understand it. This is
accomplished by using an assembler. Assembly
language uses easy-to-remember symbols such
as ADD, MOV and CALL and is therefore easier
_ to learn. Source code written in assembly
language is also easier to understand and
errors are more easily identified than in 1GL.
2GL programs were only able to be transferred
to other computers which had the same type
of processor and environment; they were
partially-portable. Due to the assembling
process 2GL had to go through, they were not
as fast as 1GL. They were however faster than
their successors.3. Third Generation Programming Languages
(3GL)
These are the successors to 2GLs. 3Gls are
considered to be high-level languages as they
are closer to human languages like English.
3GLs allow for implementations of certain
functions, like which register to put
information in, to be hidden from the
programmer. Programming time is
consequently reduced. 3GLs are easier to code
in than 1GLand 2GLs, as they utilize English-like
statements to represent machine operations.
They are consequently easier to understand
and error-finding and correction is made less
tedious. Programs written in 3GLs tend to be
executed more slowly than their predecessors
however, as they have to be preprocessed then
translated before the instructions can be -
understood by the CPU. They are generally
portable, being able to be executed on
different computer systems once compiled.
4. Fourth Generation Programming Languages
(461)
4GLs are considered to be even higher-level
languages than 3GLs as they are even closer to
any human language, like English. This proves
particular advantageous to people who have
little formal training in programming. They
allow for more operations to be performed
using lesser commands than _ theirpredecessors. They improve upon the
advantages discussed for 3GLs above and have
the same disadvantages as well. 4GLs are used
when developing database querying systems,
report generators, GUI creators, report
generators etc.
Fifth Generation Programming Languages
(S5GL)
5GLs are considered to be in a totally different
class from the other generations of
programming languages. This is because they
take an entirely different approach to arriving
at the solution to a problem than the other
generations. This approach sees to problems
being solved by specifying conditions and
constraints to the program in a logical manner
rather than by using a. programmer-written
algorithm. 5GLs are mainly used in artificial
intelligence research. Logical and some
declarative programming languages are 5GLs.
Harry Smith - Pearson Edexcel GCSE (9-1) Mathematics Foundation Tier Revision Guide + App_ Catch-up and Revise (REVISE Edexcel GCSE Maths 2019)_ for Home Learning, 2021 Assessments and 2022 Exams-Pear
Harry Smith - Pearson Edexcel GCSE (9-1) Mathematics Foundation Tier Revision Guide + App_ Catch-up and Revise (REVISE Edexcel GCSE Maths 2019)_ for Home Learning, 2021 Assessments and 2022 Exams-Pear