Вы находитесь на странице: 1из 2

A programming language is a formal computer language designed to

communicate instructions to a machine, particularly a computer. Programming languages


can be used to create programs to control the behaviour of a machine or to
express algorithms.

First generation programming language:

The earliest computers were often programmed without the help of a programming
language, by writing programs in absolute machine language. The programs, in decimal or
binary form, were read in from punched cards or magnetic tape or toggled in on switches on
the front panel of the computer.

This is the “native” language of the computer. Each instruction had two parts: Operation
code, Operand. Operation code: The command part of a computer instruction. Operand:
The address of a specific location in the computer’s memory. Machine language is
Hardware dependent: Could be performed by only one type of computer with a particular
CPU

Second generation programming language:

The next step was development of second-generation programming languages or assembly


languages, which were still closely tied to the instruction set architecture of the specific
computer. These served to make the program much more human-readable and relieved the
programmer of tedious and error-prone address calculations.

Assembly language programs are made up of instructions written in mnemonics.


Mnemonics: Uses convenient alphabetic abbreviations to represent operation codes, and
abstract symbols to represent operands. Each instruction had two parts: Operation code,
Operand. Assembly language is also Hardware dependent.

Because programs are not written in 1s and 0s, the computer must first translate the
program before it can be executed.

Third generation programming language:

The first high-level programming languages, or third-generation programming languages.


Third generation – procedural oriented Programs. Instructions in these languages are called
statements. High-level languages: Use statements that resemble English phrases
combined with mathematical terms needed to express the problem or task being
programmed. They are transportable and NOT-Hardware dependent. Because programs are
not written in 1s and 0s, the computer must first translate the program before it can be
executed.

The increased use of high-level languages introduced a requirement for low-level


programming languages or system programming languages. These languages, to varying
degrees, provide facilities between assembly languages and high-level languages and can
be used to perform tasks which require direct access to hardware facilities but still provide
higher-level control structures and error-checking.

The period from the 1960s to the late 1970s brought the development of the major language
paradigms now in use: Ex: APL, ALGOL, Lisp, C, Simula etc.
Each of these languages spawned descendants, and most modern programming languages
count at least one of them in their ancestry.
Fourth generation programming language: Non-Procedural Languages. Programming-like
systems aimed at simplifying the programmers task of imparting instructions to a computer.
Many are associated with specific application packages.

Query Languages: Enables a person to specify exactly what information they require from
the database. Usually embedded within database management programs.

Report Writers: Takes information retrieved from databases and formats into attractive,
usable output.

Application Generators: A person can specify a problem, and describe the desired results.

Object-Oriented Languages: A language that expresses a computer problem as a series of


objects a system contains, the behaviors of those objects, and how the objects interact with
each other. Object: Any entity contained within a system. Examples: A window on your
screen, A list of names you wish to organize.Some popular examples: C++, Java, Smalltalk,
Eiffel.

Fifth Generation programming languages: Natural Languages that use ordinary conversation
in one’s own language. Research and experimentation toward this goal is being done.
Intelligent compilers are now being developed to translate natural language (spoken)
programs into structured machine-coded instructions that can be executed by computers.
Effortless, error-free natural language programs are still some distance into the future.

All programming languages have some primitive building blocks for the description of data
and the processes or transformations applied to them (like the addition of two numbers or
the selection of an item from a collection). These primitives are defined by syntactic and
semantic rules which describe their structure and meaning respectively.

Syntax
A programming language's surface form is known as its syntax. Most programming
languages are purely textual; they use sequences of text including words, numbers, and
punctuation, much like written natural languages. On the other hand, there are some
programming languages which are more graphical in nature, using visual relationships
between symbols to specify a program.
The syntax of a language describes the possible combinations of symbols that form a
syntactically correct program. The meaning given to a combination of symbols is handled by
semantics.
Semantics
The term semantics refers to the meaning of languages, as opposed to their form (syntax).
Static semantics: The static semantics defines restrictions on the structure of valid texts
that are hard to express in standard syntactic formalisms.
Dynamic semantics: Once data has been specified, the machine must be instructed to
perform operations on the data. The dynamic semantics of a language defines how and
when the various constructs of a language should produce program behaviour.

Вам также может понравиться