Encyclopedia - overview of programming languages.

Spectrum Progress #03
The abundance of programming languages that exist
today, proves that there is no language
_ideal_in_all_respects_.  But this is also
proves that there has always been a search for such
language.  In this review we bring to your attention
not only a brief description of this or that
th language, but an attempt was also made to trace
in what direction did the creation of software languages go?
framing.
  The most famous ones are not mentioned here
Spectrumists BASIC and Assembler. Talk about them
a special thief, it has been going on for a long time and, we hope, there will be
continue.

      MORE PROGRAMS - GOOD AND DIFFERENT!
   MORE PROGMAKERS - GOOD AND COOL!


  (C) Linker, 1998.  


 
 
 
 


                F O R T R A N

  FORTRAN (from the English FORmula TRANslating -
formula translator).
  This, the most ancient of algorithmic languages,
kov, developed by IBM in the mid-50s
back when computers were bulky and slow
calf, and their filling is expensive. Therefore
traditional Fortran is economical with pas-
crumpled.
  The language is focused on solving scientific and technical problems
tasks and special attention is paid here to convenient
new representation of formulas. The basis of the language is
define arithmetic operators corresponding
according to its syntax of traditional notation of mathematics
matic expressions.  In addition to this, in
language has means of representing conditions,close to the representation of logical expressions AND,
OR, NOT and loop representations. Su-
There are also quite developed means of formatting
large input/output of numeric data, as well as
means of breaking complex algorithms into more
simple due to explicit definition of subroutines
and functions.
  Data descriptions in Fortran are focused on
presentation of numerical information.  Therefore
data types are simple: they are integers and reals
numbers, as well as arrays of such numbers.
  In modern opinion, the Fortran level is not
very high.  The main disadvantage of programmers
consider weak possibility of structuring
programs written in this language. That is
programs cannot be formed from separate, co-
completely independent procedures and functions, each
of which is called upon to fulfill a certain, og-
limited task. This opportunity made it easier
would be the creation of large software systems, from
parts of which are created by different people.
  In general, the popularity of Fortran is greatly inferior
no to younger high-level languages, although
there are a huge number of ready-made programs,
most of which were written by physicists, for
own needs.
  Fortran was not designed for Spectrum.
the rank of language orientation towards engineering and scientific
calculations.

                   A L G O L

  Algol (from the English ALGOrithmic Language - algo-
rhythmic language).
  First version of the languageappeared within the walls of one
from American universities in 1958. Initially
Algol's developers sought to create a language
suitable for solving a wider range of problems
dacha compared to Fortran.
  The result of their work was not only new
language, but also the scientific basis for the direction of language
high level kovs. It will be enough to say
that within the framework of language development and implementation,
la concept taken to its logical conclusion
operator algorithmic languages with advance
fixed data types and block structure
swarm, and broadcast methods were also created with
high-level algorithmic languages.
  In terms of the composition of executable operators, Algol is close to
keen on Fortran. Here almost the same means for
writing arithmetic expressions. Almost dry
wounded, although close to mathematical notation
tions, syntax of logical expressions. But Algol
It’s not for nothing that it has such a name - an algorithmic language.
It was in Algol that the concept of block and possibility appeared.
the possibility of recursion, that is, the determination of the queue
significant value of the function through the previously calculated
values of the same function. This interesting trick
allows you to create effective and at the same time
me short programs. In addition, the program for
ALGOLE is written in a free format, opera-
torus can be interrupted anywhere in the current
lines and continued without any special
cial instructions anywhere in the following line
ki.What distinguishes ALGOL is that almost from the very beginning
at first it was an algorithmic language, syntax
and the semantics of which were established internationally
native standard.
  But, as sometimes happens, the language was “late”, and
money already spent by numerous authorities
computer dealers for the purchase of fortra-
new software, stopped the development of Algol. He's like that
and remained the language of theory, but the principles laid down
new in Algol, were the basis for modern
languages - PL/1, Pascal and C.

                   C O B O L

  COBOL (from the English COmmon Business Oriented Lan-
guage is a language aimed at general business).
  This language was developed in the early 60s
in the USA for research in the economic field.
  The language allows you to effectively work with a large
amount of data, it is saturated with various
search, sorting and distribution capabilities
nia.  About programs in Cobol based on shi-
fateful use of the English language, they say
that they are understandable even to those who do not own Kobo-
scrap, since texts in this programming language
rovings do not require any special
comments.  Such programs are commonly called
be self-documenting.
  Other advantages of Cobol usually include
its structure. The disadvantages include:
the ability to program only the simplest al-
hebrical calculations. For engineering calculations
Comrade this language is not suitable.
  Quite powerfulcompilers with Cobol are developed
tans for personal computers. Some of them are so effective
effective that a program debugged on a PC is not
difficult to port to larger computers. Unfortunately
Users are deprived of this opportunity
Spectrum - there are no versions for our platform
exists.

                   P L / 1

  PL/1 (from the English Programming Language 1 - language
programming one).
  The language was created by IBM in the early 60s.
Dov and became the result of one of the first attempts
create a universal language using popular
ny qualities of other languages.
  PL/1 inherited the features of Fortran, Al-
Gola and Cobol.  The language resembles a constructor with
a large number of parts - the user has enough
but master only those parts of the language that he needs
practically necessary. To a programmer, starting
from BASIC, it is easier to learn PL/1 than
say Pascal or C.  However, despite
this, and also the fact that PL/1 is still popular
ren on large computers, he never became
universal language. At the same time, the goal that
I was pursued by the language developers, largely
determined the design of PL/1, - most of it
operators are cumbersome. "Live dinosaur in Vavilo-
not programming languages" as he was called,
PL/1 has not been fully implemented at
personal computers.  You won't find him either
on Speccy.

                  P A S C A L

  Pascal (named afterEnglish scientist
Blaise Pascal).
  In the early 70s, a Swiss professor
Niklaus Wirth developed this algol-like
a language that has absorbed all the best design solutions
the predecessor's work.
  This is the first worthy example of a language truly
structured programming, programs in Pas-
calais are formed from separate independent pro-
procedures and functions that can be easily included in
other programs.
  But the main feature of Pascal can be called
that the concept was first implemented here
abstract data types. If everything was given before
data, the transformations of which were described in the program
frame, belonged to one of the predetermined
len types (integer, real, etc.), then
in this language, construction tools were introduced
introduction of new data types. If you are not satisfied -
depending on the data types available in the language, you
you can enter new ones (for example interval type
data) - this greatly simplifies the implementation
intent into the program text. Therefore, Pascal is the most
more convenient for programming a wide range of
ha of applied problems. It is also considered a language
suitable for teaching programming as
systematic discipline based on func-
mental concepts, clearly and naturally reflected
married in this language.
  Pascal has become widespread in
personal computers and is now inferior in
perhaps only BASIC is popular, and even thenapparently not for long. If Pascal and criticism
ut, they usually mention its excessive form-
smallness, strict and petty requirements for
programmer. Try to guess, committed-
What language people are so “capricious”? At the end
Finally, Turbo Pascal was created, claiming
today on the popularity of Turbo Basic.
  But “they” have this, and what do we have, on Spectrum?
At first glance, things are not bad. Company "Hisoft"
released in time immemorial (1983-8Ch)
several versions of Pascal for Speccy, but all
they, even with modifications, are not suitable for writing
development of a truly serious program. Skazyva-
there is a lack of memory, but the speed of the computer is
sawed programs are depressing.


                      C

  C (from the English C - the third letter of the alphabet).
  The C language appeared in the early 70s and is
is an example of the successful influence of practical
system programming needs
development of new languages.
  It was originally created as an instrumental
a means for the implementation and development of a well-known
UNIX operating system for company computers
DEC, but its popularity quickly outgrew its scope
specific machine, operating system and tasks
system programming.  And now the C language
can rightfully be called one of the universal
programming languages.
  This is perhaps the only language that has been
will be able to solve problems that would otherwise
teawould require the use of assembler. C
on the one hand, it contains means of determining
introduction of new data types, a wide range of operational
ditches characteristic of high-level languages,
modularity and structure, and on the other - in C
programming tools included for almost
assembler level (for example, bitwise operations
and working with pointers). Although the language requires
programmer discipline, he is not strict in form
small claims and allows short formula-
roving.
  C is a relatively small language ser-
a playbook that is easy to learn. Several labor-
her to master the way of writing programs on this
language.  The required extensions are defined in
mostly as user functions.
The language seems to be enriched with ever new constructions -
mi, the need for which arises along the way
programming, that is, a programmer, I work
fluent in C, has the rare ability to post-
thoroughly refine your program.
  In practice, any C system contains sufficient
precisely an extensive library of functions that can
will be needed to solve typical problems.
  C programs are compact and efficient. Machine
programs that the C compiler generates are
are more compact and run faster than analogue
hygienic after compilation by Pascal.
  For almost every type of personal
computers have their own versions of the C language. Not
Spectrum is also overlooked.Available at the edge
There are at least two versions of the C compiler released
in 1984 by Hisoft. The compiler creates
blocks of machine codes, I work independently -
that do not require the presence of a compiler in
Speccy memory.
  System bibli are distributed in the package with C
libraries of functions (for example, max, min, abs, peek,
poke, free, swap, move, etc.).
  Perhaps C is not the best language for
getting to know the world of programming, but if
the framework of BASIC is too small for you and you are already looking
If you go to assembler, then perhaps C will seem
more convenient for you.

               M O D U L A - 2

  Modula-2 (from English Modula-2).
  This language was developed after Pascal
all by the same professor N. Wirth.
  The language does not have some of Pascal's weak points. B
Module-2 appeared features characteristic of language
C, allowing you to look “inside” the computer.
This language is capable of satisfying the most picky
smart specialists in algorithmic languages.
Modula-2 can be easily mastered by anyone who has programmed
shaft on Pascal.  Experts predict Module-2
highest place in the hierarchy of high-level languages
for personal computers, especially since
the language is designed to organize parallel programs
processes: this provides exceptionally high
performance of the finished program.
  Unlike Pascal with Modula-2, Speccy does not
lucky. Perhaps this language, someone create it...
something based on Pascal,would change the usual
BASIC for us.

                  F O R T H

  Fort (from the English forth - forward).
  The language was created in the early 70s by C. Moore and
E. Rather.  Forth was originally created as a language
to solve management problems, but from the moment of its
his appearance, his popularity continued to grow
and today Fort is a programming system
knowledge: operating system, interpreter, computer
pilator, assembler, text editor and ser-
hanging programs, where all components are
extension of Fort and written in Fort.
  Forth is a stack-oriented language
programming, which is based on
the use of Polish reverse notation, basically
the general rule of which is: numbers first,
then the operators.
  The main concepts of any Forth dialect are
"word" and "stack" are used. The idea of Fort, - based on
on a small initial dictionary, define new
words, include them in the library and through them op-
identify new words. The last word, received-
Thus, this is the program that is re-
accomplishing the task
  Speaking of disadvantages, it should be said that
Forth programs are hard to read for non-initiates
into the mysteries of this language, and mathematical expressions
The expressions are not very clear.
  Fort is widely used in personal
computers.  Best known on Spectrum
version FP5O, as well as Fort-83 in the IS-DOS environment.

                     . . .Now it's time to talk about two
representatives of logical functional languages
kovs involved in processing symbolic information
mation. Let's start with a language that, in its time,
th existence, can be considered second after
Fortran.

                    L I S P

  Lisp (from the English LISt Processing language -
list conversion language).
  Developed at Stanford University
D. McCarthy in the late 50s. This language has become
the basis of a number of software implementations of intelligence
nal systems and gave impetus to the development of multi-
signifiers of specialized artificial languages
intelligence and knowledge representation languages.
  Lisp is focused on dynamic processing
data.  By the way, there are no special differences between the data
and Lisp programs, both of which are considered
are presented in lists. The language allows the programmer to effectively
efficiently process lists. Language device
ka allows you to further define new designs.
In this way, Lisp is somewhat reminiscent of Fort, but there is
The big difference is that a Lisp program can re-
recycle itself. This allows the use
learn a language by solving problems for which there is no
clear solution algorithm.  I wonder what if
Usually a language is created focusing on a specific
car or class of cars, then in this case, for
new versions of Lisp have special
Lisp computers, the architecture of which corresponds to
corresponds to the peculiarities of the language.
  ForA lot of personal computers have been created
versions, most of which acquired features
algorithmic languages and significantly reject-
from "pure" Lisp. There is also a version for
Spectrum, but it is not known whether anyone has tried
if in our country we write Lisp programs in it
we, however, as in the next known
functional language.

                  P R O L O G

  Prologue (from the English PROgramming in LOGic - logical
logical programming).
  Developed by A. Kalmerauer at the University of Marseille
university in the 60s and is based on the logical
com calculus. The language was created as European
counterbalance to American Lisp.
  The basic concept of language is to translate form-
small logical problem into the program text.
The computer must independently output the desired
the result of facts and rules. At the same time he
does not receive a solution path from the programmer. Prog-
the rammist only identifies objects and related
them logical connections.  Like Lisp, Prolog is not
distinguishes between data and program. Language specifics
you can call it that there is a built-in
procedure for finding solutions on AND/OR graphs.
  Prolog makes full demands on computers.
ter very strict requirements, so use
the machines using it are pushed to the limit
opportunities.  Micro-Pro was created for Speccy
log having additional libraries, but in si-
You shouldn’t expect too much of the above from him.
coma lot.

                     . . .

  This review does not claim to be a complete list
programming languages.  Left outside the scope
rare, highly specialized
or those languages about which the author of this opus, like
as they say, “neither in sleep nor in spirit.” For example, when
While collecting material on this topic, I came across
APL (Applied Programming Language) language, called
nothing other than an ultra-high-level language
due to the introduction of heavy-duty operations into it and
operators.  Or let's take another language - Occam,
designed to divide the solution of a problem into
parallel processes on computers
with transputer.

  List of used literature.

  1. Computer science. Dictionary. M. 1994.
  2. FORTRAN ES COMPUTER. Brich Z.S. M. 1978.
  3. C programming language. Kernighan B.,
     Ritchie D. M. 1985.
  4. ZX Spectrum and TR-DOS for users and
     programmers. Larchenko A., Rodionov N.
     St. Petersburg 1994.
  5. System programs for ZX Spectrum.
     Grigoriev O. Ekaterinburg. 1993.
  6. Science and life. Magazine. Numbers from different years.


                    ─────

Share your thoughts about the article