[go: up one dir, main page]

0% found this document useful (0 votes)
16 views34 pages

Monograph On Programming Languages

The document provides an introduction to programming languages, including their history and classification. It explains that programming languages allow communication with computers through instructions. It describes low-level languages such as machine language and assembly language, and high-level languages such as FORTRAN, COBOL, C, and Java. It also covers the evolution of languages through generations.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views34 pages

Monograph On Programming Languages

The document provides an introduction to programming languages, including their history and classification. It explains that programming languages allow communication with computers through instructions. It describes low-level languages such as machine language and assembly language, and high-level languages such as FORTRAN, COBOL, C, and Java. It also covers the evolution of languages through generations.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 34

INDEX

1 INTRODUCTION
2 LANGUAGES PROGRAMMING......................................................................7
3 HISTORY OF PROGRAMMING LANGUAGES......................................8
4 CLASSIFICATION OF PROGRAMMING LANGUAGES.........................10
4.1 LANGUAGE MACHINE:..................................................................................10
4.1.1 Advantages from machine language:...............................................................11
4.1.2 Disadvantages from machine language:.........................................................11
4.2 LANGUAGES LOW LEVEL (assembler):.............................................11
4.2.1 Advantages of assembly language versus machine language:............13
4.2.2 Disadvantages of assembly language:..................................................13
4.3 LANGUAGES HIGH LEVEL:......................................................................14
4.3.1 Advantages of high-level languages:...................................................15
4.3.2 Disadvantages from high-level languages:.............................................16
5 OTHER CLASSIFICATION OF PROGRAMMING LANGUAGES..............17

5.1 First generation


5.2 Second generation.......................................................................................17
5.3 Third generation...........................................................17
4th generation
5.5 Fifth generation..........................................................................................17
6 LANGUAGES HIGH-LEVEL PROGRAMMING........................................18
6.1 FORTRAN
6.2 COBOL...........................................................................................................19
6.3 PL/I..................................................................................................................20
6.4 BASIC
6.5 PASCAL..........................................................................................................21
6.6 C
6.7 MODULA-2

3
6.8 ADA.................................................................................................................23
6.9 LISP................................................................................................................24
6.10 LOGO
6.11 RPG
6.12 ALGOL............................................................................................................25
6.13 APL
6.14 PILOT..............................................................................................................26
6.15 SMALLTALK
6.16 FORTH............................................................................................................27
6.17 LANGUAGE C++.............................................................................................27
6.18 DELPHI...........................................................................................................27
6.19 JAVA
6.20 JAVASCRIPT
6.21 HTML..............................................................................................................28
6.22 HYPERTALK
6.23 Perl
6.24 PHP
6.25 PROLOG
6.26 SQL
6.27 ASP
7 EVOLUTION OF PROGRAMMING LANGUAGES...............................33
8 CONCLUSIONS
9 REFERENCES BIBLIOGRAPHIC..........................................................36

4
1 INTRODUCTION

Computers cannot communicate with us verbally, they do not possess.


a language, are machines and as such, they need a specific language designed
for the man for them. In addition, they need to constantly interpret all the
instructions they receive. Given the difficulty of communication between the computer and
the programmer, programming languages were created that make it possible to
communication with the microprocessor, using related terms and symbols
with the type of problem that is intended to be solved, using tools
what computing provides.

These languages allow, on one hand, to write the operations that are necessary.
to carry out to solve the problem in a way similar to how it would be written
conventionally (that is, to properly draft the resolution algorithm of the
problem) and, on the other hand, is responsible for translating the algorithm into machine language

(process known as compilation) with which the program is granted the


ability to run (be executed) on the computer. The computer is in
reality is just a machine, capable of solving all the problems that the
users can express through an algorithm (program).

Currently, there are many types of programming languages, each of them


with its own grammar, special terminology, and particular syntax. For
for example, there are some created specifically for scientific applications or
general mathematics (BASIC, FORTRAN, PASCAL, etc.); others, on the other hand, are
they focus on the business field and the management of texts and files, that is, they are in

fundamentally information managers (COBOL, PL/1, etc.), or very


related to the machine language of the computer (such as C++ and the
ASSEMBLER).

Computers were programmed in machine language but the difficulties that


this entailed, along with the enormous ease of making mistakes, whose localization
it was long and complex, leading to the consideration, in the 1940s, of the possibility of using

5
symbolic languages. The first to appear were the assemblers,
it essentially consisted of giving a name (mnemonic) to each type of
instruction and each address (label). At first, the program was made on paper.
and then it was translated by hand with the help of some tables, and was introduced into the

machine in numerical form, but soon programs appeared that


they were assembled automatically.

6
2 PROGRAMMING LANGUAGES

It is complicated to define what is and what is not a programming language. It is assumed

generally that the translation of the instructions to a code that understands the
The computer must be completely systematic. Normally, it is the computer.
the one that performs the translation.

Below is a series of definitions of the languages of


programming.

According to Kenneth C. Louden, 'A programming language is a notation for


write programs, through which we can communicate with the hardware and
giving the appropriate orders for the execution of a specific process. A
language is defined by a grammar or set of rules that apply to a
alphabet composed of the set of symbols used. The different levels of
existing programming allows us to access the hardware, so that according to
let's use one level or another, so we will have to use a certain language linked
to their corresponding translators.

David Kanagusico Hernández comments that a programming language


Set of 'linguistic' norms (words and symbols) that allow writing a
program and that it be understood by the computer and can be transferred to
similar computers for their operation in other systems.

The Documentation Center for Studies and Oppositions states that a language of
programming is a 'Set of instructions, commands, and symbols recognizable by
automaton, through its programming unit, which allows it to execute the
desired control sequence. To the total set of these instructions, commands and
symbols that are available are called programming languages of
automaton. The program is made up of a set of instructions, statements,
functional blocks and graphics that indicate the operations to be performed. The
instructions represent the most basic task of a program: read an input,

7
perform an operation, activate an output, etc. The statement represents the minimum
set of instructions or statements that perform a complex task or function:
find the value of a logical function in combination with several variables, consult
a set of conditions, etc. The functional block is the set of instructions or
statements that perform a complex task or function: counters, records of
displacements, information transfers, etc. All these elements are
related to each other through symbols or graphics.

Finally, Katherine Gómez mentions, "It is a set of words and symbols that
allow the user to generate commands and instructions for the computer to
execute. Programming languages must have instructions that belong to
the already familiar categories of input/output, calculation/manipulation, of texts,
logic/comparison, and storage/retrieval.

So, from the definitions of the different authors we can gather that a
programming language is a means that allows us to execute a series of
instructions whether simple or complex that the computer will interpret accordingly
to the logical structure prepared by the user that will allow for a
specific task.

3 HISTORY OF PROGRAMMING LANGUAGES

The first programming languages emerged from the idea of Charles Babbage, the
What occurred to this man in the mid-19th century? He was a teacher.
mathematician from Cambridge University and English inventor, who at the beginning of
The 19th century predicted many of the theories on which current computers are based.
It consisted of what he called the analytical machine, but for reasons
The technical aspect could not be built until the mid-20th century. Ada collaborated with it.

Lobby, which is considered the first programmer in history, because


I create programs for that supposed Babbage machine, on cards.
perforated. Since the machine was never built, Ada's programs,

8
logically, they did not execute either, but they do represent a starting point of
programming, especially if we consider that as soon as programming began,
the programmers used the techniques designed by Charles Babbage, and Ada, that
consisted among other things, in programming using punch cards. Despite
Hello, Ada has remained the first programmer in history. It is said by
so much that these two geniuses from the past were ahead of their time by a century,
describe the intelligence they were endowed with.

In 1823, the British government supported him to create the project of a machine for
differences, a mechanical device for performing repeated additions. But Babbage
he dedicated himself to the project of the analytical engine, abandoning the machine of

differences, that could be programmed with punch cards, thanks to the creation
Charles Jacquard (French). This man was a fabric manufacturer and had
created a loom that could automatically reproduce fabric patterns by reading the
information encoded in patterns of punch holes in paper cards
rigid. So Babbage tried to create the machine that could be programmed with
punch cards to perform any calculation with a precision of 20 digits.
But the technology of the time was not enough to bring their ideas to life. Although the
Babbage's ideas did not materialize definitively, but his contribution is
decisive, since current computers respond to a scheme analogous to that of the
analytical machine. In its design, the machine consisted of five basic units:

Input unit, for entering data and instructions;


Memory, where data and intermediate results were stored;
Control unit, to regulate the sequence of execution of operations;
Arithmetic-Logic Unit, which performs the operations;
Output unit, responsible for communicating the results to the outside.

Charles Babbage, known as the 'father of computing,' was unable to complete in


that time the construction of the computer I had dreamed of, given that it was missing
something fundamental, electronics. The path outlined by Babbage was never
abandoned and following it, the first computers were built.

9
When the first computer emerged, the famous ENIAC (Electronic Numerical
Integrator And Calculator), its programming was based on physical components, or
sea, which was programmed, directly changing the machine's hardware,
exactly what I knew how to do was to change the cables around to achieve that
machine programming. Data input and output were done through
punched cards.

4 CLASSIFICATION OF PROGRAMMING LANGUAGES

4.1 MACHINE LANGUAGE:


Machine language is the only one that the computer directly understands, since
it is written in languages directly intelligible by the machine (computer),
it uses the binary alphabet, which consists of the only two symbols 0 and 1, called
bits (English abbreviation for binary digits). Its instructions are binary strings.
(chains or sequences of characters of digits 0 and 1) that specify an operation and,
the memory positions (direction) involved in the operation are called
machine instructions or machine code. It was the first language used in the
computer programming, but it fell out of use due to its difficulty and
complication, being replaced by other languages that are easier to learn and use,
which also reduces the possibility of making mistakes. Machine language is the
known binary code. Generally, in the encoding of programs, it ...
he used the hexadecimal system to simplify the writing task.

All instructions prepared in any machine language have as their purpose


less two parts. The first is the command or operation, which tells the
computers what function is it going to perform. All computers have a
operation code for each of the functions. The second part of the
instruction is the operand, which indicates to the computer where to find or store the
data and other instructions that will be manipulated, the number of operands of a
instructions vary on different computers.

10
4.1.1 Advantages of machine language:

Possibility of loading (transferring a program to memory) without the need for


subsequent translation, which implies a faster execution speed than
any other programming language.

4.1.2 Disadvantages of machine language:

Difficulty and slowness in coding.


Little reliability.
Great difficulty in verifying and fine-tuning the programs.
Programs can only be executed on the same processor (CPU).

Currently, the disadvantages outweigh the advantages, which makes it practically


not recommended for machine languages.

4.2 LOW-LEVEL LANGUAGES (assembly):


They are easier to use than machine languages, but like them,
depends on the particular machine. The quintessential low-level language is the
assembler. Assembly language is the first attempt to replace language
machine for another one more similar to those used by people. This tries to flexibilize
the representation of the different fields. This flexibility is achieved not
writing the fields in binary and approximating the writing to the language.

In the early 1950s and in order to facilitate the work of the


programmers, mnemonic codes were developed for the operations and
symbolic directions. The mnemonic codes are the alphabetical symbols of
machine language. The computer continues to use machine language to
process the data, but assemblers translate the symbols first
of specified operation codes to their equivalents in machine language. In
Currently, programmers do not assign real address numbers to data.
symbolic, simply specify where they want the first one to be placed
the locality of the program and the assembler program takes care of the rest, assigns
locations for both instructions and data. These programs of

11
assembly or assemblers also allow the computer to convert the
instructions in assembly language of the programmer in their own code
machine.

A program of instructions written in assembly language by a programmer


it's called source program. After the assembler converts the program
the machine code source is referred to as the object program. For the
programmers find it easier to write instructions in assembly language than
in machine language code but it may require two runs of
computer before the source program instructions can be used
to produce the desired outputs.

Low-level language is the programming language that the computer can


understand when executing programs, which increases their execution speed,
Well, it doesn't need an interpreter to translate each line of instructions.

At a very low level, microprocessors exclusively process signals.


binary electronics. Giving an instruction to a microprocessor actually involves
send series of ones and zeros spaced in time in a certain way.
This sequence of signals is called machine code. The code represents
usually data and numbers and instructions to manipulate them. An easier way
to understand machine code is by giving each instruction a mnemonic, such as
for example STORE, ADD or JUMP. This abstraction results in the
assembler, a very low-level language that is specific to each
microprocessor.

Low-level languages allow the creation of very fast programs, but they are,
often difficult to learn. More importantly, the fact that the programs
written at a low level are highly specific to each processor. If it is carried out
the program to another machine must be rewritten from the beginning.

12
4.2.1 Advantages of assembly language over machine language:

Easier coding and, in general, its calculation speed save


time and require less attention to detail.
Fewer mistakes are made, and those that are made are easier to
to locate.
Both machine language and assembly language enjoy the advantage of
minimal memory usage and minimum execution time in comparison
with the result of the compilation of the equivalent program written in others
languages.
Assembly language programs are easier to modify than those
programs in machine language.

4.2.2 Disadvantages of assembly language:

Total dependence on the machine, which hinders the transportability of the


programs (ability to run a program on different machines).
The assembly language of the PC is different from the assembly language of the
Apple Macintosh.
The training of programmers is more complex than that of
high-level programmers, as it requires not only the techniques of
programming, but also the knowledge of the inside of the machine.

The programmer must have a perfect understanding of the hardware of the equipment, as they handle

directly the memory positions, processor registers, and others


physical elements. All the instructions are elementary, that is, in the program
All operations that are to be conducted must be described in maximum detail.
carry out on the machine for the execution of any process.

Assembly languages have very limited applications; they are focused on


basically in real-time applications, process control and device control
electronics.

13
4.3 HIGH-LEVEL LANGUAGES:
These languages are the most used by programmers. They are designed to
that people write and understand programs in a much easier way
than machine and assembly languages. A program written in high-level language
level is independent of the machine (the instructions do not depend on the design of
hardware or a particular computer), so these programs are
portable or transportable. Programs written in high-level language can
be executed with little or no modification in different types of
computers. They are programming languages in which the instructions sent
so that the computer executes certain commands that are similar to human language.
Since the computer is not able to recognize these commands, the use of
of an interpreter that translates high-level language to a low-level language that
the system can understand.

It is generally thought that computers are machines that perform tasks of


calculations or text processing. The above description is just a very
schematic of seeing a computer. There is a high level of abstraction between what
it asks the computer and what it really understands. There is also a relationship
complex between high-level languages and machine code.

High-level languages are usually easy to learn because they are


formed by elements of natural languages, such as English. In BASIC, the
most well-known high-level language, commands such as 'IF COUNTER=10 THEN'
"STOP" can be used to ask the computer to stop if COUNTER is
equal to ten. Unfortunately for many people, this way of working is a bit
frustrating, given that despite the fact that computers seem to understand a
natural language, they actually do it in a rigid and systematic way.

High-level languages, also known as evolved languages, emerge


subsequent to the previous ones (machine language, low-level languages or
assembler) with the following objectives, among others:

14
Achieve independence from the machine, being able to use the same program in
different teams with the only condition of having a translation program or
compiler, which is supplied by the manufacturer, to obtain the program
binary machine executable code in question. Furthermore, it is not necessary
know the specific hardware of that machine. Approach natural language,
so that the program can be written and read more easily, eliminating
many of the possibilities of making mistakes that occurred in the language
machine, since words (in English) are used instead of strings of symbols without
no apparent meaning. Include frequently used routines, such as entry/
output, mathematical functions, table management, etc., that appear in a kind of
language library, so that it can be used whenever desired without
need to program them each time.

4.3.1 Advantages of high-level languages:

The training time for programmers is relatively short.


compared to other languages.
Program writing is based on syntactic rules similar to those of
human languages, names of instructions such as READ, WRITE,
PRINT, OPEN, etc.
The modifications and adjustments of the programs are easier.
Reduction of program costs.
Portability.
They allow for better documentation.
They are easier to maintain.

4.3.2 Disadvantages of high-level languages:

Increase in setup time due to the need for different ones.


translations of the source program to achieve the final program.
The internal resources of the machine that are heavily exploited are not being utilized.

better in machine languages and assemblers.


Increase in memory usage. The execution time of the
programs are much greater.

15
It can be said that the main problem that high-level languages present is
the large number of them that currently exist in use, besides the different
versions or dialects that have developed from some of them. It is difficult
establish a general classification of them, since in any that is
There will be languages that belong to more than one of the established groups.
A widely used classification, based on the way programs work
and the philosophy with which they were conceived is the following:

• Imperative languages. They use instructions as the unit of work.


programs (Cobol, Pascal, C, Ada).

• Declarative languages. Programs are built through descriptions of


logical functions or expressions (Lisp, Prolog).

• Object-oriented languages. The design of programs is based more on the


data and its structure. The unit of process is the object and it includes the data
(variables) and the operations that act on them (Smalltalk, C++).

• Problem-oriented languages. Designed for specific problems,


mainly of management, they are usually application generators.

• Natural languages. New languages are being developed with the main
objective of bringing the design and construction of programs closer to the language of the

people.

5 ANOTHER CLASSIFICATION OF PROGRAMMING LANGUAGES

It can be classified according to the development of languages since the emergence of


computers, which follows a certain parallelism with the established generations
in their evolution:

5.1 First generation.


Machine languages and assemblers.

16
5.2 Second generation.
Early imperative high-level languages (FORTRAN, COBOL).

5.3 Third generation.


High-level imperative languages. They are the most used and remain in effect in the
current events (ALGOL 8, PL/I, PASCAL, MODULA).

4th generation.
Basically oriented towards management applications and database handling
(NATURAL, SQL)

5.5 Fifth generation.


Focused on artificial intelligence and natural language processing
(LISP, PROLOG).

For better understanding, some definitions will be made:

Program: it is a set of instructions written in a programming language


that indicate to the computer the sequence of steps to solve a problem.

Source code: it is created in some high-level language, so it is understood


100% by the human being. This must be complemented by its documentation or
manuals that indicate its logical development.

Object code: is created by compilers and serves as a link between the


source program and the executable.

6 HIGH-LEVEL PROGRAMMING LANGUAGES

The following are several of the most well-known and widely used languages of
high level.

17
6.1 FORTRAN
Abbreviation of Formula translator (formula translator), was defined around
year 1955 in the United States by the company IBM. It is the oldest of the
high-level languages. Before him, all programs were written in language
assembler or machine language. It is a specialized language for applications
techniques and scientific. It is characterized by its power in mathematical calculations,
but it is limited in management applications, file handling, processing of
string manipulation and report editing. It is a notable language, due to its ease of use.
with which to express an equation. Many of its characteristics were
later incorporated into the first BASIC language. One of its advantages is that it is
a compact language and it is also widely used for applications in the
businesses that do not require handling large data files. Until 1961, it
it maintained IBM's monopoly, but later it was implemented in
computers from other manufacturers. Throughout its existence, they have appeared
different versions, among which stands out the one adopted in 1966 by the ANSI
(American National Standards Institute), where new rules were defined
language and achieved its independence from the machine; that is,
the portability of the language began. This version was called FORTRAN IV or
FORTRAN 66, and the language became so popular in the 60s that FORTRAN 66
the first language was officially regulated in 1972. In 1977 it appeared
a new, more evolved version called FORTRAN V or FORTRAN 77.
It is reflected in the document ANS X3.9-1978: Programming Language FORTRAN
And define two levels of the language called FORTRAN 77 complete and FORTRAN.
77 basic, with the second being a subset of the first. It also includes,
instructions for handling character strings and files, as well as others
for the use of structured programming techniques. These characteristics
make the language also valid for certain management applications.
In the mid-1970s, virtually every computer was provided,
mini or mainframe, with a normal FORTRAN 66 system. It was therefore possible
write programs in FORTRAN on any system and be fairly sure that

18
they could move to work in any other system quite easily. This, and
the fact that FORTRAN programs could be processed very efficiently. The
the latest normalization of the language, FORTRAN 90, is found in the document
ANS X3.198-1991 which includes characteristics such as recursion,
parallel treatment of tables and use of dynamic memory. Allows for expressing the
programs in ways that better satisfy a computing environment
modern and many of the mechanisms that were appropriate have become obsolete
in FORTRAN 77. In FORTRAN 90, some features of FORTRAN 77 have been
replaced by better, safer, and more effective traits, many of these
were removed from the FORTRAN 95 language. FORTRAN has the advantage of being a
a compact language that works very well to meet the needs of the
scientists and business statisticians.

COBOL
It is the most widely used language in management applications, created in 1960 by a
committee called CODASYL (COnference on DAta SYstems Languages)
sponsored by the United States Department of Defense, in order to have
of a universal language for commercial applications, as its name expresses
Common Business Oriented Language.

Throughout its existence, it has undergone various updates. Its first standard
It was approved by ANSI in 1968. Subsequently, in 1974, the standard was adopted.
ANS X3.23-1974, which has lasted until its latest version, COBOL ANS-85, which
facilitates the structured design of programs.

Its most notable characteristics are as follows: it resembles the language


natural (English), is self-documented and offers great facilities in handling
files, as well as in the editing of written reports. You can use terms
commonly used in business.

Among its drawbacks are its rigid writing format rules, the
need to write all elements in maximum detail, excessive length

19
in their sentences, and even duplication in some cases, and the non-existence of
mathematical functions.

Nevertheless, it can be said that today it continues to be the most widely used language
used in management applications.

6.3 PL/I
It was created in the early 1960s by IBM to be used in its equipment.
of the 360 system. Inspired by the ALGOL, COBOL, and FORTRAN languages
developed PL/I (Programming Language/I) by taking the best features from
the previous ones and adding some new ones, with the aim of obtaining a language that
as general as possible in terms of its implementation, useful for technical applications
scientific, commercial, text processing, database, and programming
of systems. It is a complex programming language. Compiled and
structured, is capable of managing errors and processing multitasking, and is used
in academic and research environments.

Among its novelties is its great freedom in the writing format of the
programs: supports structured programming and modular design. It is a language
flexible and sophisticated. However, it has not surpassed its progenitors in its
specific applications, partly due to their breadth and, therefore, their size
compiler that until now could only be installed on large machines. The element
The basic of this program is the statement that ends with a semicolon. The
statements are combined into procedures. A procedure can represent
completely to a small program or a 'building block' or module of a
more complex program.

6.4 BASIC
The BASIC language was designed by professors John G. Kemeny and Thomas E.
Kurtz from Dartmouth College (United States) in 1965, with the main objective of
provide beginners with an easy-to-learn language, as indicated in their
Beginner's All-purpose Symbolic Instruction Code

20
general purpose symbolic for beginners). It is a very interactive language
popular that has acceptance due to its ease of use, it is a simple language
to learn and easy to translate. It is interactive, allowing direct communication
between the user and the computing system during the preparation and use of the
programs.

Among its main new features is being an interpreted and user-friendly language.
conversational, useful for technical and management applications. This, combined with the

the popularization of microcomputers and personal computers has made it so that


its use has greatly expanded, while also fostering the
emergence of a great diversity of entertainments that extend and adapt to
particular needs the original language. There are many interpreters and
language compilers.

6.5 PASCAL
It was created by the Swiss mathematician Nicklaus Wirth in 1970, based on the
ALGOL language, in whose design he had participated in the sixties. Its name
comes from the 17th century French philosopher and mathematician, Blaise Pascal, who invented
the first mechanical type machine for addition. It was the first great language created
after the concepts associated with have been widely disseminated
structured programming.

Although initially the designer's idea was to provide an appropriate language


for the teaching of programming concepts and techniques, over time has
has become a widely used language in all types of applications, that
has great facilitation for system programming and graphic design.

Contributes the concepts of data types, structured programming, and design


descendant, among others, in addition to having become a predecessor of others
more modern languages, such as MODULA-2 and ADA.

21
6.6 C
This language was created in 1972 by Dennis Ritchie based on the work developed.
by his colleague from Bell Telephone Laboratories, Ken Thompson. They had
previously designed the UNIX operating system, and its intention in developing the
C language aimed to achieve an ideal language for systems programming.
that was independent of the machine, with which to write its UNIX system.

Although, as I just said, it was initially designed for programming


systems, subsequently its use has extended to scientific-technical ablations, of
databases, text processing, etc.

In 1980, Bjarne Stroustrup, inspired by the Simula67 language, added the


characteristics of object-oriented programming including the advantage of one
object-oriented function library) and I call it C with classes. By 1983
that designation changed to C++. With this new approach, the new
methodology that increases the possibilities of programming under new
concepts.

The optimal use of this language is achieved within its natural environment, which
this is the UNIX operating system, and among its features stands out the use of
structured programming to solve low-level tasks, as well as the wide
library of routines available. The C language combines characteristics of
intermediate programming between assembly languages and high-level languages
level; with great power based on its operations at the bit level (typical of
assemblers) and most of the elements of structured programming
high-level languages, making it the preferred language for the
software development of systems and professional application programming
of computers.

6.7 MODULA-2
The MODULA language was designed in 1977 under the direction of Nicklaus Wirth.
creator of the PASCAL language as well, with the intention of including the needs of

22
the programming of systems and responding to the criticisms received regarding the
shortcomings of the PASCAL language. In 1979, a version is released that moves to
to be called MODULA-2 and that endures to this day.

In addition to including the features of its predecessor, this new language


it incorporates the main shortcomings of that one, such as the possibility of compilation
separated, library creation, concurrent programming, improves the management of
character strings, input/output procedures and management of the
memory, etc. In addition, it has great facilities for systems programming.

Also, due to its educational qualities, it has been widely accepted by the
university community as an ideal tool for teaching of the
programming.

6.8 ADA
It is the last attempt to obtain a single language for all types of applications, and
even the latest advances in programming techniques. Its design was commissioned
by the Department of Defense of the United States, for use in services
military, to the company Honeywell-Bull after a rigorous selection among
various proposals made regarding a series of language requirements and
have negatively evaluated twenty-three existing languages. Of these, we
they selected PASCAL and ALGOL as the basis for the creation of the new language
and PL/I.

The standardization of the language was published in 1983 under the name ADA, in honor
of the considered first programmer in history, Augusta Ada Byron, countess
of Lovelace.

Among the characteristics of the language are separate compilation,


abstract data types, concurrent programming, structured programming
freedom of writing formats, etc. Its main disadvantage is its large

23
extension. The writers called it inflexible and inefficient, as its
supporters regarded it as a major advancement in software technology.

6.9 LISP
In computer science, acronym for List Processing. A programming language for
computers or computers oriented towards list generation, developed in
1959-1960 by John McCarthy and used mainly for manipulating data lists
or symbols. The LISP language represented a radical change compared to the
procedural languages (FORTRAN, ALGOL) that were being developed at that time. The
LISP is an interpreted language, in which each expression is a list of calls.
functions. This language is still frequently used in research and in
academic circles, and it was long considered the model language
for artificial intelligence (AI) research, although Prolog has gained
land over the last few years.

6.10 LOGO
In computer science, programming language for computers,
developed in 1968 by Seymour Papert at MIT, which is frequently used in
the teaching of programming language to children. An important feature of
Logo is the turtle graphics that allow the programmer to create simple drawings.
directing the movements of the turtle on the screen forward, towards the
right or left. Once they master the simple environment of the drawing, the
programmer (usually a boy or a girl) begins to discover the
more sophisticated characteristics of language, which are fundamentally based
in the programming language LISP. Logo is considered a language for
the training, even though some companies tried to make it have a greater
acceptance in professional programming circles.

6.11 RPG
Report Program Operator was introduced in 1960 as a language for duplication.
quickly the process approach used with a punched card team. This

24
the language was developed by IBM in 1964. Its use is still limited, especially for
business applications that are processed on small computers,
generate commercial or business reports. As its name suggests, the RPG
it is designed to generate the output reports that result from the process of
business applications.

Despite the file update applications, RPG is a programming language of


limited purpose because the object programs generated by the RPG compiler
They continue without deviation, a basic processing cycle.

One advantage of RPG is the relative ease of learning and using it. Given that the
programming logic is fixed, there are fewer formal rules than in others
languages.

6.12 ALGOL
ALGOL (ALGOrithmic Language) was introduced in 1958. It was the first programming language.

high-level structured process programming. It was geared towards the use of those who
they participate in scientific and mathematical projects. An international group of
European and American mathematicians aimed to create a common language.
normalized that would allow them to exchange algorithms, although it is outdated,
He was the first to incorporate key concepts for current programming.

6.13 APL
Its initials stand for (A Programming Language). A Programming Language.
This program was developed by Kenneth Investment in 1961 to solve
mathematical problems. This language is characterized by its brevity and by its
matrix generation capacity and is used in the development of models
mathematicians.

6.14 PILOT
Programming Inquiry Language Or Teaching
scheduled research) created in 1969.

25
This programming language is primarily used for creating
applications intended for computer-assisted instructions. It is characterized by
for using a minimum of syntax.

6.15 SMALLTALK
SMALLTALK, Object-oriented Programming Language integrated with a
multi-window development environment. SMALLTALK is not just a beautiful language of
object-oriented computing. The development environment deserves similar valuation
and has been copied many times, since the Apple Operating System MS Windows
and Borland Pascal (in an extended memory). Many concepts of SMALLTALK
how browsers and browsing techniques have found their way today in
many development tools of Generation X, developed by SMALLTALK
they possess a 'fun-to-use' factor. Changes are recorded instantly and the
they can be tested quickly.

SMALLTALK was developed within the Research Group on Learning in the


Xerox Research Center in Palo Alto in the early 70s. The main
Smalltalk ideas are generally attributed to Alan Kay, with roots in Simula.
LISP and SketchPad. Dan Ingalls wrote the code for the first windows.
overlays, pop-up menus and the BitBlt class. Adele Goldberg and Dave Robson
they wrote the reference manuals for SMALLTALK and were key members
from the development team. A licensing program from Xerox and Xerox Special
Information Systems. However, the widespread distribution to the community of
development did not occur until the founding of a new company called ParcPlace
Systems Inc., Led by Adele Goldberg.

A second SMALLTALK (SMALLTALK 4) was developed by Digitalk in the


Angeles California. This SMALLTALK was intended to meet the need for a
small, high-speed, PC-based product.

Object Technology International Inc. (OTI) developed a set of tools


to provide investment control and configuration management in large

26
projects. IBM developed the VisualAge product family for SMALLTALK in
collaboration with Object Technology (formerly ParcPlase-Digitalk) and IBM
they remain as the dominant distributors of development environments in
SMALLTALK. Some new SMALLTALKs are in the development stage.

6.16 FORTH
Fourth generation language, created in 1970, is a structured language and
easy to expand and offers high functionality in a space
reduced. It is a high-level language from which almost all currently derive
languages used in robots.

6.17 LANGUAGE C++


It is pronounced 'C plus plus'. It was developed by Bjarne Stroustrup at Bell
Laboratories in the early 1980s. C++ introduces programming
object-oriented in C. It is an extremely powerful and efficient language. C++
it is a superset of C, to learn C++ means to learn everything about C, then
learn object-oriented programming and its use with C++.

6.18 DELPHI
It is a visual object-oriented programming environment for rapid development of
general purpose Rapid Application Development (RAD) applications, including client/server applications.

Delphi is the 32-bit version of Delphi (Delphi 3), meaning they are almost the same.
with the only difference that Delphi 3 is much improved, for example it contains
a TeeChart, which is used for business graphs.

Delphi has the following characteristics:

Performance - with the best and fastest compiler in the world.

Rapid Application Development (RAD).

Component reusability, a true object-oriented environment.

27
Management of scalable databases.

Open and scalable multi-level architecture.

Dissemination of database information on the Web at high speed.

6.19 JAVA
It is a programming language for creating secure, portable, object-oriented programs.
to interactive objects, to improve the delivery of information through the Internet,
etc.

6.20 JAVASCRIPT
This programming language was originally called LIVESCRIPT, but then
it was renamed with the name of JAVASCRIPT, with the idea of capitalizing on the fame of
Java, a language developed by Sun Microsystems. This is an ideal complement of
HTML language, by allowing the page to perform some tasks on its own, without
the need to overload the server it depends on; JAVASCRIPT is a
language designed specifically to be executed on the internet.

Among these tasks, it can include, for example, performing some simple calculations,
format a text so that it can be read by different people in different ways,
provide a means to configure the display of a page, make a pre
validation check on the form before sending it, etc.

6.21 HTML
The HTML language is used to create those attractive web pages. It is about a
a system of tags that allows linking text, sounds, and graphics simultaneously
within the same document, with others on the server or even with others
WWW servers. That is to say, it is an editor to combine texts, images, and even
sound and now also moving images. It is, ultimately, the way of
manage and present information on the web.

28
A new format has been developed to write hypertext documents.
data or language called Hyper Text Markup Language (HTML). This language
allows to give precise instructions to the client program on how it should be presented
document on screen or when printed.

The HTML language is currently used to write hypermedia texts in the


web.

Three fundamental rules:

1.- HTML simply text

The first thing is to know that an HTML document is a plain text file, then,
It can be edited with any text editor.

2.- Tabs and line breaks do not matter

HTML interpreters do not take into account tabs, line breaks, or the
extra white spaces. This has advantages or disadvantages. The main advantage is
which allows obtaining uniform results and good presentation in a manner
quite easy. The main disadvantage is that an HTML document, at least,
should use the <P>... </P> or <BR> commands to prevent all the text from being together
a single line.

There are 3 special characters:

< Less than, used to indicate the start of an HTML command

Greater than, used to indicate the end of an HTML command.

& Ampersand is used to write special characters (mathematical symbols,


commercials, as well as the less than and greater than signs among others) in a
document.

The first thing is to know the commands that every HTML document must contain.
more than one line long:

29
THE COMMAND PARAGRAPH:

The command <P>... </P> is used as a paragraph delimiter in HTML. It inserts


automatically a line break at the end of the paragraph, and produces a spacing
convenient between the different paragraphs of a document. Also in form
Additionally, it allows you to align the text to the center, to the left, or to the right.

THE LINE BREAK COMMAND:

The < BR> command allows you to make a line break.

THE HEADING COMMANDS:

HTML texts have six levels of headings. For example, level 1


The major divisions of text use heading level 6 for the
smaller divisions of text.

HYPERTEXT STRUCTURE:

There are two fundamental parts of an HTML document.

HEADER:

It starts with the command <HEAD> and ends with </HEAD>. Generally, it
include here the document title, using the command <TITLE>... </TITLE>.

BODY:

It starts with the <BODY> command and ends with the command. Inside the
The body of the document includes any printable character. In addition, it is
It is important to include the command <ADDRESS>... </ADDRESS> at the end of the body but

inside it. Inside the ADDRESS the name of the author of the document is written,
organization to which it belongs, its email address and another
information that is considered relevant.

30
6.22 HYPERTALK
"HyperTalk" is the language developed by Dan Winkler for Bill Atkinson, the creator.
"HyperCard" for Apple-Macintosh. It is aimed at the creation of applications.
according to the system of 'hyperfiles' (interrelated card systems where
it makes it easier to 'navigate' from one file to another).

HyperTalk is a good example of an object-oriented language. This type of language


combines declarative logic with algorithms (See 'PROLOG'). A program already
it is not a sequence of instructions but a set of objects grouped in
sets, defined by attributes to which they can be associated
instructions. Thus, in HyperCard, there are files ('stacks') that group
cards, and each of these contains data fields and buttons. They are all
"objects" that -although they maintain a hierarchical relationship with each other- are associated with

independent instruction packages ("scripts"). Each object


it belongs to a set (like cards or buttons) that has its own 'attributes'
common to all its members, and each attribute will have a common or specific value
for each case. To give or search for that value, there are 'facets' that are
instructions (associated procedures).

6.23 Perl
It is a specialized language in text processing, particularly extracting
and validate the responses to questionnaires included on web pages.

6.24 PHP
Language that ties to HTML (web pages) to define procedures that has
to create the web server, for example processing a form, sending or extracting
data from a database (also fitting with a SQL-type language),
send one or another webpage according to certain pre-established conditions
programmer, etc.

31
6.25 PROLOG
The early years of the 1970s are known as a period of "crisis of
software
costs higher than those of the hardware that runs it. It also became evident a
growing need to process 'knowledge' (something much broader and
complex that quantitative data or mere 'character sequences' to which
many programming languages are being reduced). This crisis led to research
numerous alternatives, among which new languages not based on
algorithmic instructions or procedures. If man 'processes' more information
By logical inference rather than calculation, couldn't the machine do the same?

PROLOG ('Logic Programming') is a response to this crisis, the result of


advance of modern logic (functional type). It was created by A. Colmenauer and Ph.
Roussel, with the collaboration of R. Kowalski, simultaneously at the University of
Aix-Marseille (France) and Edinburgh (Great Britain). It is based on the calculation of

first-order predicates and in Robinson's resolution principle. Instead of


to be algorithmic ("procedural" in English, a term with no translation), that is conceived
as a set of instructions that the machine must execute in form
sequential, it is "declarative", that is, based on definitions (of "facts" or "rules",
as explained further below).

6.26 SQL
Language developed especially to facilitate database queries
(BD), progressively narrowing down the search (hence the name "Sequential"
Query Language

Today there are numerous database management applications that


they rely on SQL (the most known, powerful - and expensive - are Oracle and Informix).

Today, databases can be connected to hypertexts (web pages), for which


Good applications already come with modules that handle the connection. The PHP language.

32
which we talked about earlier also serves to define insertion procedures
and data query from databases that work with SQL.

6.27 ASP
Its name is Active Server Pages. It is an independent language, designed by
Microsoft for the efficient coding of server scripts, which were
designed to be executed by a web server in response to a request from a
User's URL. ASP scripts are similar to other server scripts.
with which you may be familiar, that are used on other platforms,
like Perl, Python, etc.

7 EVOLUTION OF PROGRAMMING LANGUAGES

Period Influences Languages


1950 - 55 Primitive computers Assembly languages
Experimental languages
High Level

1956 - 60 Small Computers, FORTRAN


expensive and slow ALGOL 58 and 60

Magnetic tapes COBOL


Compilers and interpreters LISP
Code optimization

1961 - 65 Large and expensive computers FORTRAN IV


Magnetic Discs Extended COBOL 61
Operating systems Revised ALGOL 60
General purpose language SNOBOL
APL (as notation only)

1966 - 70 Computers of different PL/I


sizes, speeds, costs FORTRAN 66 (standard)
Storage systems COBOL 65 (standard)
massive data (expensive) ALGOL 68
Multitasking operating system and SNOBOL4
interactive SIMULA 67
Compiler with optimization BASIC

33
Standard language, APL/360
flexible and general

1971 - 75 Micro computers


Storage Systems PASCAL
massive small data COBOL 74
and cheap PL /I

Structured programming
Software Engineering
Simple languages
1976 - 80 Computers cheap and ADA
powerful
Distributed systems FORTRAN 77
Real-time programmers PROLOG
Interactive programmers C
Data abstraction
Reliable programmers
and easy maintenance

All this development of computers and programming languages tends to


to be distinguished by generations and the criteria that were determined to establish the change

generation is not very well defined, but it is apparent that they must be fulfilled
at least the following requirements: The way they are constructed and the way in
that human beings communicate with them.

The Programming Language is a set of words and symbols that allow


the user generates commands and instructions for the computer to execute.
Programming languages must have instructions that belong to the
familiar categories of input/output, calculation/manipulation, of texts,
logic/comparison, and storage/retrieval.

The first programming languages emerged from the idea of Charles Babbage,
included among others, programming using punched cards.

34
Machine language is the only one that the computer understands directly, it uses the
binary alphabet, which consists of the only two symbols 0 and 1, called bits. It was
the first language used in computer programming.

Low-level language is easier to use than machine languages, but when


just like them, they depend on the particular machine. The computer continues
using machine language to process the data, but the programs
assemblers translate the specified operation code symbols to
its equivalents in machine language.

High-level language is designed so that people can write and understand.


the programs in a much easier way than machine languages and
assembler. A program written in a high-level language is independent of the
machine, so these programs are portable or transportable.

Nowadays we use applications for everything, specialized programs in


different tasks, etc… if we want to know what is behind all of that we need to
dive into the wonderful and interesting world of programming languages and so
understand why when I press the 'play' button on a game I can start playing, or
simply because I can do a sum in an online calculator, but all
they represent the intercommunication between man and machine to facilitate their
performance.

9 BIBLIOGRAPHIC REFERENCES

Books:

Gómez, K. (2013) The Computer System. Spain: Center of


Documentation of Studies and Competitions Madrid.

Digital Notes
from Mexico.

35
Programming Languages
Principles and Practice.

Electronic References:

The provided text is a URL and cannot be translated.

Invalid input. Please provide text to translate.

http://www.monografias.com/trabajos38/types-programming-languages/types-
programming-languages.shtml

http://en.wikipedia.org/wiki/Programming_language

36

You might also like