Programming
languages:
A programming language is a set of rules that tells the computer what
operations to do. These languages are used by the programmers to
create other kinds of software.
Generations of
Programming Languages
The five generation of programming languages start at the lowest
level with
(l) machine language. They then range up through
(2) assembly language,
(3) high level languages (procedural and object-oriented languages),
and
(4) very high level languages (problem-oriented languages). At the
highest level are
(5) natural languages.
First Generation: Machine Language
Machine language is the basic language of the computer, representing
data as 1s and Os. Each CPU model has its own machine language:
Machine language programs vary from computer to computer, i.e., they
are machine-dependent. . These binary digits, which correspond to the
on and off electrical states of the computer, are clearly not
convenient for people to read and use.
Advantages:-
-
Very efficient
-
Require less storage space
Disadvantages:-
-
Machine dependent
-
Programming is difficult
Second Generation: Assembly Language
assembly language is a low-level programming language that allows a
computer user to write a program using abbreviations or more easily
remembered words instead of numbers, A programmer can write
instructions in assembly language more quickly than in machine
language, In these languages, each numeric instruction is assigned a
short name (called a mnemonic) that is easier to remember than a
number.
Advantages:-
-
It is easier to modify than machine language
-
Easier to understand and use
Disadvantages:-
-
The coding to assembly language is time consuming
-
They are also machine dependent
An assembler, or assembler program, is a
program that translates the assembly-language program into machine
language.
Assembler
An assembler is a computer program that translates assembly language
statements into machine language codes. The assembler takes each of
the assembly language statements from the source code and generates a
corresponding bit stream using O's and 1 's. The output of the
assembler in the form of sequence of O's and l's is called object
code or machine code. This machine code is finally executed to obtain
the results.
Third Generation: High-Level or Procedural Languages
A high level or procedural language resembles some human language
such as English. For example, COBOL, which is used for business
applications. A procedural language allow users to write in a
familiar notation, rather than numbers or abbreviations, Also, unlike
machine and assembly languages, most of procedural languages are not
machinedependent-i.e., they can be used on more than one kind of
computer. Few examples, are FORTRAN, COBOL, BASIC and Pascal.
For a procedural language we need language translator to translate it
into machine language. Depending on the procedural language we may
use either of the following types of translators: -
Compiler
The compiler is a computer program that translates the source code
written in a high-level language into the corresponding object code
of the low-level language. This translation process is called
compilation. The entire high-level program is converted into the
executable machine code file. Compiled languages include COBOL,
FORTRAN, C,C++, etc.
Interpreter
The interpreter is a translation program that converts each
high-level program statement into the corresponding machine code.
This translation process is carried out just before the program
statement is executed. Instead of the entire program, one statement
at a time is translated and executed immediately. The commonly used
interpreted language is BASIC and PERL.
Compiler
(a) Scans the entire program first and translates it into machine
code.
(b) Converts the entire program to machine code
(c) Slow for debugging (removal of mistakes from a program).
(d) Execution time is less.
Interpreter
(a) Translates the program line by line.
(b) Each time the program is executed, every line is checked for
syntax error and then converted to equivalent machine code.
(c) Good for fast debugging.
Advantages:-
*
These are easy to learn.
*
Easier to maintain.
*
They are not machine dependent.
*
Programs are portable.
Fourth Generation: Problem Oriented Languages
Third-generation languages tell the computer
how to do something. Fourth generation languages, in contrast, tell
the computer what to do. Very high-level
or problem-oriented languages, also called fourth-generation
languages (4 GLs),
are much more user-oriented and allow users to develop programs with
fewer commands compared with procedural languages, although
they require more computing power. These languages are known as
problem-oriented because
they are designed to solve specific problems, whereas procedural
languages are more general-purpose languages.
Three types of problem-oriented languages are report generators,
query languages, and application generators.
Report generators
A report generator, also known as a report writer, is a program for
end-users that produces a report. The report may be a printout or a
screen display.
Query languages
A query language is an easy-to-use language for retrieving data from
a database management system.
Application generators
An application generator is a programmer's tool consisting of modules
that have been preprogrammed to accomplish various tasks
Fifth Generation: Natural Languages
Natural languages are of two types. The first are ordinary human
languages: English, Spanish etc. The second are programming languages
that use human language to provide people a more natural connection
with computers.
Natural languages are part of the field of study known as artificial
intelligence. Artificial intelligence (AI) is a group of related
technologies that attempt to develop machines capable of emulating
human-like qualities, such as learning, reasoning, communicating,
seeing and hearing.
Use of High Level Programming Languages for the Systematic
Development of Programs
Let us now consider some of the third-generation, or high-level
languages in use today.
Examples: BASIC, COBAL,
BASIC
Advantage: The primary advantage of BASIC is its ease of use.
Disadvantages: Its processing speed is slow.
COBOL:
COBOL is the language of business and it was formally adopted in
1960, COBOL (for Common Business-Oriented Language) is
the most frequently used business programming language for large
computers. Its most significant attribute is that it is extremely
readable. For example, a COBOL statement might be :
MULTIPLY HOURLY-RATE BY HOURS-WORKED GIVING TOTAL-PAY
COBOL, too, has both advantages and disadvantages.
Advantages:
(1) It is machine independent.
(2) Its English-like statements are easy to understand, even for a
nonprogrammer.
(3) It can handle many files, records, and fields.
(4) It easily handles input/output operations.
Disadvantages:
(1) Because it is so readable, it is wordy. Thus, even simple
programs are lengthy, and programmer productivity is slowed.
(2) It cannot handle mathematical processing as well as FORTRAN
FORTRAN:
FORTRAN is the language of mathematics and the first high-level
language. It was developed in 1954 by IBM; FORTRAN (for
FORmula TRANslator) was the first high-level language.
Originally designed to express mathematical formulas, it is still the
most widely used language for mathematical, scientific, and
engineering problems. It is also useful for complex business
applications, such as forecasting and modeling.
FORTRAN has both advantages and disadvantages:
Advantages:
(1) FORTRAN can handle complex mathematical and logical expressions
(2) Its statements are relatively short and simple.
(3) FORTRAN programs developed on one type of computer can often be
easily modified to work on other types.
Disadvantages:
(1) FORTRAN does not handle input and output operations to storage
devices as efficiently as some other higher-level languages.
(2) It has only a limited ability to express and process non-numeric
data.
(3) It is not as easy to read and understand as some other high-level
languages.
Pascal:-
Pascal is the simple language. Named after the 17th-century French
mathematician Blaise Pascal, Pascal is an alternative to BASIC
as a language for teaching purposes and is relatively easy to learn.
A difference form BASIC is that Pascal uses structured programming.
A compiled language, Pascal offers these advantages and
disadvantages:
Advantages:
(1) Pascal is easy to learn.
(2) It has extensive capabilities for graphics programming. (3) It is
excellent for scientific use.
Disadvantage: Pascal has limited input/output programming
capabilities, which limits its business applications.
C++ is an Object Oriented Programming (OOP) language. In
C++-the plus signs stand for "more than C"-which combines
the traditional C programming language with object-oriented
capability. C++ was created by Bjame Stroustrup. Three
important concepts of OOP are:
Encapsulation, Inheritance, Polymorphism
Advantages
(1) It is portable.
(2) Once the programmer has written a block of program code, it can
be reused in number of program.
GUI based Languages
The Graphical User Interface (GUI as the name suggests, uses
illustrations for text, which help users to interact with an
application. This feature makes it easier to understand
things in a quicker and easier way.
Visual Basic: Visual Basic is an example of visual
programming. Visual BASIC is a Windows-based, object-oriented
programming language from Microsoft that lets users develop Windows
and office applications.
Visual C++ : This language is a GUI extension of
conventional C++ language. It is a part of Microsoft Visual Studio
software package. It is an Object Oriented Programming language that
has been designed for producing high level object oriented
applications, that can work with hardware devices, for
example-Windows applications and device drivers.
No comments:
Post a Comment