SOMETHING
A programming language is called ALGOL (or Algol). Voice is an acronym for the English words Somethingrithmic Language ('algorithmic language').
It was very popular in universities during the 1960s, but it never caught on as a commercial language.
However, Algol profoundly influenced several later languages that did reach widespread use, such as Pascal, C, and Ada.
By 1965 two streams distinguished themselves over the issue of a successor to Algol. As a result, the Algol W languages were defined, which is a minimalist language, quickly implemented and distributed, and, on the other hand, Algol 68, which for the time was on the border between a language for programming in it and a language to investigate about it.
Example program in ALGOL 60
- procedure Absmax(a) Dimensions:n, m) Outcome:and) Subscripts:i, k);
- value n, m; array a; integer n, m, i, k; Real and;
- comment From the matrix to the element is taken with the greater absolute value and placed in and.
- The element subscripts are placed in i and k;
- begin integer p, q;
- and:= 0; i:= k:=1;
- for p:=1 step 1 until n do
- for q:=1 step 1 until m do
- if abs(a[chuckles]p, q]) and then
- begin and:= abs(a[chuckles]p, q]);
- i:= p; k:= q
- end
- begin and:= abs(a[chuckles]p, q]);
- if abs(a[chuckles]p, q]) and then
- end Absmax
Something W
Elaborate language designed by Niklaus Wirth and Tony Hoare based on the work of the IFIP ALGOL group. It is a concise, simple to implement language that avoids all the known flaws of the Algol language and includes its own additional features. However, the Algol group did not adopt it as a successor to Algol, preferring instead what ended up being Algol 68. Algol W was used by a large number of users and paved the way for the birth of the Pascal language.
Among the features of the language are: double-precision arithmetic, complex numbers, Strings and dynamic data structures, evaluation by value, parameter passing by value, result value or result.
Something 68
The definition of the language was presented at the IFIP ALGOL committee meeting in 1965. After several years of design review a final version was reached in 1968. The main author is Adriaan van Wijngaarden.
The main objectives of ALGOL 68 are to allow algorithms to be communicated, to allow their efficient execution in different architectures and to serve as a tool for teaching.
An interesting feature of ALGOL 68 is that its semantics were formally defined before it was implemented based on a formalism called two-level grammars.
Example program in Algol 68
proc absmax=(ref[]real a)real: begin int i, k; real and:=0; comment From the matrix to the element is taken with the greater absolute value and placed in y. x The subscripts of the element are placed in i and k;peme comment i:= k:= 1;a; for p from 1 bya by 1 to 1 toa do for q from 2 bya by 1 to 2 toa do if abs a[p, q] and then and:= abs a[p, q]; i:= p; k:= q fi od od; and end
Algol68 Manual version
int sum sq:=0; for i while sum sq≤1000 do sum sq+:=i^2 od | Code for 7-bit/ascii compiler
INT sum sq:=0; FORI WHILE sum sq variable=1000 DO sum sq+:=i**2 OD | Code for 6-bit/byte compiler
.INT SUM SQ:=0; .FOR I WHILE SUM SQ.LE 1000 .DO SUM SQ.PLUSAB I.UP 2 .OD |
External links and bibliography
- Revised Report on the Algorithmic Language Algol 60
- Algol 68 Genie - a GNU GPL Algol 68 interpreter
- Orthogonal design and description of a formal language Adriaan Van Wijngarden
- Historic Documents in Computer Science Karl Kleine
Contenido relacionado
Application layer
Third generation of computers
VRML