Webster's Online Dictionary
with Multilingual Thesaurus Translation

 
Earth's largest dictionary with more than 1226 modern languages and Eve!

Definition: Algol

Part of Speech Definition
Noun 1. The second brightest star in Perseus; the first known eclipsing binary.[Wordnet]
2. (from a combination of ALGOrithmic and Language); a programming language used to express computer programs as algorithms.[Wordnet]
3. ALGOrithmic Language; a programming language used to express computer programs as algorithms.[Wordnet]
4. Second brightest star in Perseus; first known eclipsing binary.[Wordnet]
5. A fixed star, in Medusa's head, in the constellation Perseus, remarkable for its periodic variation in brightness.[Websters].

Sources: WordNet 3.0 Copyright © 2006 by Princeton University. All rights reserved. Webster's Revised Unabridged Dictionary (1913)

Top

Date "Algol" was first used in popular English literature: sometime before 1390. (references)

Specialty Definition: Algol

Domain Definition
Computing ALGOL ALGOL 60 Source: The Free On-line Dictionary of Computing.
Census (Algorithmic Language) A landmark programming language used for solving mathematical problems. Developed in 1958. (references)
Computing One of the international program languages designed for the concise, efficient expression of arithmetic and logical processes and the control of these processes. Taken from ALGOrithmic Language. Source: European Union. (references)
Technology ALGOrithmic Language. (references)

Source: compiled by the editor from various references; see credits.

Top

Common Expressions: Algol

Expressions Definition
ALGOL 58 ALGOL 58 is the first language in the ALGOL programming language family. It was an early compromise design soon superseded by ALGOL 60; ALGOL 58 introduced the fundamental notion of compound statement, but it was restricted to control flow only, and it was not tied to identifier scope. (references)
ALGOL 68 ALGOL 68 (short for ALGOrithmic Language 1968) is an imperative computer programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and a more rigorously defined syntax and semantics. Contributions of ALGOL 68 to the field of computer science are deep and wide ranging, although some of them were not publicly identified until they were passed, in one form or another, to one of many subsequently developed programming languages. (references)
ALGOL 68C The ALGOL68C computer programming language compiler was developed for the CHAOS OS for the CAP capability computer at Cambridge University in 1975 by Stephen Bourne and Mike Guy as a dialect of ALGOL 68. (references)
ALGOL 68S ALGOL 68S was designed as a subset of ALGOL 68 in order to permit single-pass compilation. It was mostly for numerical computation. (references)
ALGOL N ALGOL N is the name of a successor to ALGOL 60 designed in Japan with the aim of being as powerful as ALGOL 68 but as simple as ALGOL 60. It was proposed by Yoneda. Algol N tried to use extensibility in order to solve the problem that programming language designers faced when trying to make an inextensible language for everything or having to make many languages, one for each domain. It avoided coercion while not making things difficult for programmers. The letter 'N' is short for 'Nippon', or Japan in Japanese. (references)
Algol Object Code In computer science, ALGOL Object Code was a simple and compact and stack-based instruction set architecture mainly used in teaching compiler construction. (references)
ALGOL W Algol-W is a programming language. It was Niklaus Wirth's proposal for a successor to ALGOL 60 in the ALGOL 68 committee. (references)
ALGOL X ALGOL X was the code name given to the programming language which the Working Group 2.1 on ALGOL of the International Federation for Information Processing was to develop as a successor to ALGOL 60. It attempted to find a "short-term solution to existing difficulties". (references)
ALGOL Y ALGOL Y was the name given to a speculated successor for the ALGOL 60 programming language that incorporated some radical features that were rejected for ALGOL 68 and ALGOL X. ALGOL Y was intended to be a "radical reconstruction" of ALGOL. (references)
Dartmouth ALGOL 30 Dartmouth ALGOL 30 was an implementation, firstly of ALGOL 58, then of ALGOL 60 for the LGP-30 at Dartmouth College, hence the name. (references)
Elliott ALGOL Elliott ALGOL (also known simply as Extended ALGOL) was the Burroughs-specific extension of the ALGOL 60 programming language designed system and application programming in its B5000 mainframes. (references)
Pidgin Algol In computer science, Pidgin Algol refers to an informal notation that blends syntax taken from an ALGOL-like programming language with some other mathematical notation, such as that of set theory. Hence the name: the mixture is a programming language analogy to a pidgin in natural languages. (references)

Source: compiled by the editor from various references; see credits.

Top

Specialty Expressions: Algol

Expressions Domain Definition
ABC ALGOL Computing An extension of ALGOL 60 with arbitrary data structures and user-defined operators, for symbolic mathematics. ["ABC ALGOL, A Portable Language for Formula Manipulation Systems", R.P. van de Riet, Amsterdam Math Centrum 1973]. (1994-10-28). Source: The Free On-line Dictionary of Computing..
ALGOL 58 Computing ALGOL 58 An early version of ALGOL 60, originally known as "IAL". Michigan Algorithm Decoder (MAD), developed in 1959, was based on IAL. ["Preliminary report - International Algebraic Language", CACM 1(12):8, 1958]. [Details? Relationship to ALGOL 60?] (1999-12-10). Source: The Free On-line Dictionary of Computing..
ALGOL 60 Computing ALGOL 60 ALGOrithmic Language 1960. A portable language for scientific computations. ALGOL 60 was small and elegant. It was block-structured, nested, recursive and free form. It was also the first language to be described in BNF. There were three lexical representations: hardware, reference, and publication. The only structured data types were arrays, but they were permitted to have lower bounds and could be dynamic. It also had conditional expressions; it introduced:=; if-then-else; very general "for" loops; switch declaration (an array of statement labels generalizing Fortran's computed goto). Parameters were call-by-name and call-by-value. It had static local "own" variables. It lacked user-defined types, character manipulation and standard I/O. See also EULER, ALGOL 58, ALGOL 68, Foogol. ["Report on the Algorithmic Language ALGOL 60", Peter Naur ed., CACM 3(5):299-314, May 1960]. (1995-01-25). Source: The Free On-line Dictionary of Computing..
ALGOL 60 Modified Computing ["A Supplement to the ALGOL 60 Revised Report", R.M. DeMorgan et al, Computer J 19(4):364]. [SIGPLAN Notices 12(1) 1977]. An erratum in [Computer J 21(3):282 (Aug 1978)] applies to both. (1995-01-25). Source: The Free On-line Dictionary of Computing..
ALGOL 60 Revised Computing (Or "Revised ALGOL 60") A revision of Algol 60 which still lacked standard I/O. ["Revised Report on the Algorithmic Language ALGOL 60", Peter Naur ed, CACM 6(1):1-17 (Jan 1963)]. [Sammet 1969, p.773]. (1995-01-25). Source: The Free On-line Dictionary of Computing..
ALGOL 68 Computing An extensive revision of ALGOL 60 by Adriaan van Wijngaarden et al. ALGOL 68 was discussed from 1963 by Working Group 2.1 of IFIP. Its definition was accepted in December 1968. ALGOL 68 was complex, and posed difficulties for both implementors and users. It featured structural equivalence; automatic type conversion ("coercion") including dereferencing; flexible arrays; generalised loops (for-from-by-to-while-do-od), if-then-elif-fi, an integer case statement with an 'out' clause; skip and goto statements; blocks; procedures; user-defined operators; procedure parameters; concurrent execution (cobegin/coend); semaphores; generators "heap" and "loc" for dynamic allocation. It had no abstract data types or separate compilation. (1995-05-01). Source: The Free On-line Dictionary of Computing..
ALGOL 68 Revised Computing ALGOL 68 Revised A significant simplification of ALGOL 68. ["Revised Report on the Algorithmic Language ALGOL 68," A. Van Wijngaarden et al, Acta Informatica 5:1-236, 1975, also Springer 1976, and SIGPLAN Notices 12(5):1-70, May 1977]. (1995-05-03). Source: The Free On-line Dictionary of Computing..
ALGOL 68C Computing A variant of ALGOL 68 developed by S. Bourne and Mike Guy of Cambridge University in 1975 and used as the implementation language for the CHAOS OS for the CAP capability computer. ALGOL 68C was ported to the IBM 360, VAX/VMS, and several other platforms. (1995-05-02). Source: The Free On-line Dictionary of Computing..
ALGOL 68-R Computing A restriction of ALGOL 68 permitting one-pass compilation, developed at the Royal Signals Radar Establishment, Malvern, Worcester, UK in April 1970. Identifiers, modes and operators must be declared before use. There is no automatic proceduring and no concurrency. It was implemented in ALGOL 60 under GEORGE 3 on an ICL 1907F. ["ALGOL 68-R, Its Implementation and Use", I.F. Currie et al, Proc IFIP Congress 1971, N-H 1971, pp. 360-363]. (1995-05-03). Source: The Free On-line Dictionary of Computing..
ALGOL 68RS Computing ALGOL 68RS An extension of ALGOL 68 supporting function closures by the Royal Signals Radar Establishment, Malvern UK. It has been ported to Multics and VAX/VMS. (1995-05-04). Source: The Free On-line Dictionary of Computing..
ALGOL 68S Computing ALGOL 68S A subset of ALGOL 68 allowing simpler compilation, intended mainly for numerical computation. It was rewritten in BLISS for the PDP-11, and later in Pascal. It is available as shareware from Charles Lindsey . Version 2.3 runs on Sun-3 under SunOS 4.x and Atari under GEMDOS (or potentially other computers supported by the Amsterdam Compiler Kit). ["A Sublanguage of ALGOL 68", P. G. Hibbard, SIGPLAN Notices 12(5), May 1977]. (1995-05-04). Source: The Free On-line Dictionary of Computing..
ALGOL C Computing A variant of ALGOL 60 developed by Clive Feather of Cambridge University ca. 1981. ALGOL C added structures and exception handling. It was designed for beginners and students. (1994-11-24). Source: The Free On-line Dictionary of Computing..
ALGOL D Computing ["A Proposal for Definitions in ALGOL", B.A. Galler et al, CACM 10:204-219, 1967]. Source: The Free On-line Dictionary of Computing..
ALGOL N Computing ALGOL N A successor to ALGOL 60 proposed by Yoneda. (1994-11-24). Source: The Free On-line Dictionary of Computing..
ALGOL W Computing ALGOL W A derivative of ALGOL 60. It introduced double precision, complex numbers, bit strings and dynamic data structures. It is parsed entirely by operator precedence and used the call-by-value-result calling convention. ["A Contribution to the Development of Algol", N. Wirth, CACM 9(6):413-431, June 1966]. ["ALGOL W Implementation", H. Bauer et al, TR CS98, Stanford U, 1968]. (1994-11-24). Source: The Free On-line Dictionary of Computing..
ALGOL X Computing A proposed successor to ALGOL 60, a "short-term solution to existing difficulties". Three designs were proposed, by Wirth, Seegmuller and van Wijngaarden. [Sammet 1969, p. 194]. (1995-05-07). Source: The Free On-line Dictionary of Computing..
ALGOL Y Computing ALGOL Y A proposed successor to ALGOL 60, a "radical reconstruction". Originally a language that could manipulate its own programs at run time, it became a collection of features that were not accepted for ALGOL X. (1995-05-09). Source: The Free On-line Dictionary of Computing..
Extended ALGOL Computing Extended ALGOL An extension of ALGOL 60, used to write the ESPOL compiler on the Burroughs B5500, Burroughs B6500, and Burroughs B6700. ["Burroughs B6700 Extended ALGOL Language Information Manual", No. 5000128 (Jul 1971)]. [Sammet 1969, p. 196]. (1995-05-09). Source: The Free On-line Dictionary of Computing..
Formula ALGOL Computing An ALGOL extension for symbolic mathematics, strings and lists, developed by A.J. Perlis and R. Iturriaga at Carnegie for the CDC G-20 in 1962. ["An Extension of ALGOL for Manipulating Formulae", A.J. Perlis et al, CACM 7(2):127-130 (Feb 1964)]. [Sammet 1969, p. 583]. (1995-02-15). Source: The Free On-line Dictionary of Computing..
Graphic ALGOL Computing Graphic ALGOL Generation of shaded perspective pictures in real time. ["An Extended ALGOL 60 for Shaded Computer Graphics", B. Jones, Proc ACM Symp on Graphic Languages, Apr 1976]. Source: The Free On-line Dictionary of Computing..
Revised ALGOL 60 Computing ALGOL 60 Revised. Source: The Free On-line Dictionary of Computing..

Source: compiled by the editor from various references; see credits.

Top

Abbreviations & Acronyms: Algol

The following table is compiled from various sources, across various languages. When English abbreviations or acronyms come from a non-English source, this is noted.
Entry Source Expression Field
ALGOL English Algorithmic Language N/A
ALGOL Greek αλγοριθμική γλώσσα Computing
ALCOR English ALGOL Converter N/A
Source: compiled by the editor, based on several corpora (additional references).

Top

Extended Definition: Algol


Algol

Algol may mean:

  • Algol, a star system
  • Algol, a place in The Hitchhiker's Guide to the Galaxy.
  • Algol variable, a class of eclipsing binary stars, named after its most famous example
  • ALGOL, a programming language
  • Algol (fanzine) (later Starship) a science fiction fanzine edited by Andrew I. Porter
  • Algol (film), a 1920 science fiction film directed by Hans Werckmeister
  • Algol (Phantasy Star), a fictional planetary system in the Phantasy Star computer role-playing game
  • Algol, a Great Sword obtained by defeating the Hyper Notorious Monster Cerberus in Mount Zhayolm, in the MMORPG Final Fantasy XI.

Source: adapted by the editor from Wikipedia, the free encyclopedia; from the article "Algol (disambiguation)". Image Credit.



Extended Definition: Algol


ALGOL

ALGOL
Paradigm procedural, imperative, structured
Appeared in 1958
Designed by Designed by committee
Influenced CPL, Pascal, Ada, Scheme, Python

ALGOL (short for ALGOrithmic Language)[1] is a family of imperative computer programming languages originally developed in the mid 1950s which greatly influenced many other languages, and became the de facto way algorithms were described in text-books and academic works for almost the next 30 years. It was designed to avoid some of the perceived problems with FORTRAN and eventually gave rise to many other programming languages (including Pascal). ALGOL uses bracketed statement blocks and was the first language to use begin end pairs for delimiting them. Fragments of ALGOL-like syntax are sometimes still used as a notation for algorithms, so-called Pidgin Algol.

There are three official main branches of ALGOL family:

  • ALGOL 58 - originally known as the IAL (for International Algorithmic Language.)
  • ALGOL 60 - revised 1963[2]
  • ALGOL 68 - revised 1973[3]

Niklaus Wirth based his own Algol-W on ALGOL 60, before moving to develop Pascal. Algol-W was intended to be the next generation ALGOL, but the ALGOL 68 committee decided on a design that was more complex and advanced rather than a cleaned, simplified ALGOL 60. The official ALGOL versions are named after the year they were first published.

History

ALGOL was developed jointly by a committee of European and American computer scientists in a meeting in 1958 at ETH Zurich. It specified three different syntaxes: a reference syntax, a publication syntax, and an implementation syntax. The different syntaxes permitted it to use different keyword names and conventions for decimal points (commas vs. periods) for different languages.

ALGOL was used mostly by research computer scientists in the United States and in Europe. Its use in commercial applications was hindered by the absence of standard input/output facilities in its description and the lack of interest in the language by large computer vendors. ALGOL 60 did however become the standard for the publication of algorithms and had a profound effect on future language development.

John Backus developed the Backus normal form method of describing programming languages specifically for ALGOL 58. It was revised and expanded by Peter Naur for ALGOL 60, and at the suggestion by Donald Knuth renamed to Backus-Naur form.[4]

Peter Naur: "As editor of the ALGOL Bulletin I was drawn into the international discussions of the language, and was selected to be member of the European language design group in November 1959. In this capacity I was the editor of the ALGOL 60 report, produced as the result of the ALGOL 60 meeting in Paris in January 1960."

The following people attended the meeting in Paris (from January 1 to 16):

Alan Perlis gave a vivid description of the meeting: “The meetings were exhausting, interminable, and exhilarating. One became aggravated when one’s good ideas were discarded along with the bad ones of others. Nevertheless, diligence persisted during the entire period. The chemistry of the 13 was excellent.”

Both John Backus and Peter Naur served on the committee which created ALGOL 60, as did Wally Feurzeig, who later created Logo.

ALGOL 60 inspired many languages that followed it. C.A.R. Hoare remarked, "Here is a language so far ahead of its time, that it was not only an improvement on its predecessors, but also on nearly all its successors."[5]

True ALGOL 60s specification and implementation timeline

There were about 70 augmented, extensions, derivations and sublanguages of Algol 60.[6]

Name Year Author State Description Target CPU Licencing
Elliott ALGOL 1960 C. A. R. Hoare UK Subject of the famous Turing lecture National-Elliott 803 & the Elliott 503
Case ALGOL 1961 US Simula was originally contracted as a simulation extension of the Case ALGOL UNIVAC 1107
EMIDEC Algol 1961 US EMIDEC
GOGOL 1961 Bill McKeeman US For ODIN time-sharing system PDP-1
X1 Algol 60 1961 Edsger Dijkstra and J.A. Zonneveld Netherlands Mathematical Centre, Amsterdam X1
Dartmouth ALGOL 30 1962 Thomas Eugene Kurtz et al US LGP-30
USS 90 Algol 1962 L. Petrone Italy
Algol Translator 1962 G. van der May and W.L. van der Poel Netherlands Staatsbedrijf der Posterijen, Telegrafie en Telefonie ZEBRA
Kidsgrove Algol 1963 F. G. Duncan UK English Electric KDF9
VALGOL 1963 Val Schorre US A test of the META II compiler compiler
Whetstone 1964 Brian Randell and L J Russell UK Atomic Power Division of English Electric. Precursor to Ferranti Pegasus (computer), National Physical Laboratories ACE (computer) and English Electric DEUCE implementations. English Electric KDF9
NU ALGOL 1965 Norway UNIVAC
ALGEK 1965 USSR Minsk-22 АЛГЭК, based on ALGOL-60 and COBOL support, for economical tasks
MALGOL 1966 publ. A. Viil, M Kotli & M. Rakhendi, Estonian SSR Minsk-22
ALGAMS 1967 GAMS group (ГАМС, группа автоматизации программирования для машин среднего класса), cooperation of Comecon Academies of Science Comecon Minsk-22, later ES EVM, BESM
ALGOL/ZAM 1967 Poland Polish ZAM computer
RegneCentralen ALGOL 1967 Peter Naur Denmark
Simula 67 1967 Ole-Johan Dahl and Kristen Nygaard Norway Algol 60 with classes UNIVAC 1107
DG/L 1973 US DG Eclipse family of computers
Chinese Algol 1974 China Chinese characters, expressed via the Symbol system  ?

The Burroughs large systems are designed to be programmed in an extended variant of ALGOL 60 known as Burroughs Extended ALGOL. Their operating system, the MCP, was written in ESPOL, an extension of Burroughs Extended ALGOL, as far back as 1961. The Unisys Corporation still markets machines in this family today, running the MCP (now maintained in another ALGOL variant known as NEWP) and supporting ALGOL compilers which have been extended several more times.

Properties

ALGOL 60 as officially defined had no I/O facilities; implementations defined their own in ways that were rarely compatible with each other. In contrast, ALGOL 68 offered an extensive library of transput (ALGOL 68 parlance for Input/Output) facilities.

ALGOL 60 allowed for two evaluation strategies for parameter passing: the common call-by-value, and call-by-name. Call-by-name had certain limitations in contrast to call-by-reference, making it an undesirable feature in imperative language design. For example, it is impossible in ALGOL 60 to develop a procedure that will swap the values of two parameters if the actual parameters that are passed in are an integer variable and an array that is indexed by that same integer variable.[7] However, call-by-name is still beloved of ALGOL implementors for the interesting “thunks” that are used to implement it. Donald Knuth devised the “Man or boy test” to separate compilers that correctly implemented "recursion and non-local references". This test contains an example of call-by-name.

ALGOL 68 was defined using a two-level grammar formalism invented by Adriaan van Wijngaarden and which bears his name. Van Wijngaarden grammars use a context-free grammar to generate an infinite set of productions that will recognize a particular ALGOL 68 program; notably, they are able to express the kind of requirements that in many other programming language standards are labelled “semantics” and have to be expressed in ambiguity-prone natural language prose, and then implemented in compilers as ad hoc code attached to the formal language parser.

Code sample (ALGOL 60)

(The way the bold text has to be written depends on the implementation, e.g. 'INTEGER' (including the quotation marks) for integer.)

procedure Absmax(a) Size:(n, m) Result:(y) Subscripts:(i, k);
value n, m; array a; integer n, m, i, k; real y;
comment The absolute greatest element of the matrix a, of size n by m
is transferred to y, and the subscripts of this element to i and k;
begin integer p, q;
y := 0; i := k := 1;
for p:=1 step 1 until n do
for q:=1 step 1 until m do
if abs(a[p, q]) > y then
begin y := abs(a[p, q]);
i := p; k := q
end
end Absmax

Here’s an example of how to produce a table using Elliott 803 ALGOL.[8]

FLOATING POINT ALGOL TEST'
BEGIN REAL A,B,C,D'

READ D'

FOR A:= 0.0 STEP D UNTIL 6.3 DO
BEGIN
PRINT PUNCH(3),££L??'
B := SIN(A)'
C := COS(A)'
PRINT PUNCH(3),SAMELINE,ALIGNED(1,6),A,B,C'
END'
END'

PUNCH(3) sends output to the teleprinter rather than the tape punch.
SAMELINE suppresses the carriage return + line feed normally printed between arguments.
ALIGNED(1,6) controls the format of the output with 1 digit before and 6 after the decimal point.

Timeline: Hello world

The variations and lack of portability of the programs from one implementation to another is easily demonstrated by the classic hello world program.

ALGOL 58 (IAL)

Main article: ALGOL 58

ALGOL 58 had no I/O facilities.

ALGOL 60 family

Since ALGOL 60 had no I/O facilities, there is no portable “Hello world” program in ALGOL. The following program could (and still will) compile and run on an ALGOL implementation for a Unisys A-Series mainframe, and is a straightforward simplification of code taken from The Language Guide at the University of Michigan-Dearborn Computer and Information Science Department Hello world! ALGOL Example Program page.

BEGIN
FILE F(KIND=REMOTE);
EBCDIC ARRAY E[0:11];
REPLACE E BY "HELLO WORLD!";
WRITE(F, *, E);
END.

An alternative example, using Elliott Algol I/O is as follows. Elliott Algol used different characters for ‘open-string-quote’ and ‘close-string-quote’, represented here by ‘ and ’.

program HiFolks;
begin
print ‘Hello world’;
end;

Here’s a version for the Elliott 803 Algol (A104) The standard Elliott 803 used 5 hole paper tape and thus only had upper case. The code lacked any quote characters so £ (UK Pound Sign) was used for open quote and ? (Question Mark) for close quote. Special sequences were placed in double quotes (e.g. ££L?? produced a new line on the teleprinter).

HIFOLKS’
BEGIN
PRINT £HELLO WORLD££L???’
END’

The ICL 1900 Algol I/O version allowed input from paper tape or punched card. Paper tape 'full' mode allowed lower case. Output was to a line printer.

'BEGIN'
'WRITE TEXT'("HELLO WORLD");
'END'

ALGOL 68

Main article: ALGOL 68

In the language of the "Algol 68 Report", Input/output facilities were collectively called the "Transput".

ALGOL 68 code was published reserved words were typically lowercase, but bolded or underlined.

begin
print(("Hello, world!",newline))
end

OR using a specific transput channel:

begin
putf((stand out,$gl$,"Hello, world!"))
end

For ease of programming on the 7-bit computers of the time there were "official" methods to "BOLD" reserved words, for example, by using uppercase:

BEGIN
print(("Hello, world!",newline))
END

Programmers were sometimes required to totally "THINK IN UPPERCASE" on computers that only had 6-bit characters, eg the CDC "super computers". In this case the above code would be written:

'BEGIN'
PRINT(("HELLO, WORLD!",NEWLINE))
'END'

The "Algol 68 Report" was translated into Russian, German, French and Bulgarian, and allowed programming in languages with larger character sets, eg Cyrillic alphabet. eg the Russian BESM-4.

BEGIN
print(("Здравствуй, мир!",newline))
END

Note: The 1964 Russian standard GOST 10859 allowed the encoding of 4-bit, 5-bit, 6-bit and 7-bit characters in ALGOL.[9]

ALGOL 60 Reserved words and restricted identifiers

There are 35 such reserved words in the standard Burroughs large systems sub-language: ALPHA, ARRAY, BEGIN, BOOLEAN, COMMENT, CONTINUE, DIRECT, DO, DOUBLE, ELSE, END, EVENT, FALSE, FILE, FOR, FORMAT, GO, IF, INTEGER, LABEL, LIST, LONG, OWN, POINTER, PROCEDURE, REAL, STEP, SWITCH, TASK, THEN, TRUE, UNTIL, VALUE, WHILE, ZIP.

There are 71 such restricted identifiers in the standard Burroughs large systems sub-language: ACCEPT, AND, ATTACH, BY, CALL, CASE, CAUSE, CLOSE, DEALLOCATE, DEFINE, DETACH, DISABLE, DISPLAY, DIV, DUMP, ENABLE, EQL, EQV, EXCHANGE, EXTERNAL, FILL, FORWARD, GEQ, GTR, IMP, IN, INTERRUPT, IS, LB, LEQ, LIBERATE, LINE, LOCK, LSS, MERGE, MOD, MONITOR, MUX, NEQ, NO, NOT, ON, OPEN, OR, OUT, PICTURE, PROCESS, PROCURE, PROGRAMDUMP, RB, READ, RELEASE, REPLACE, RESET, RESIZE, REWIND, RUN, SCAN, SEEK, SET, SKIP, SORT, SPACE, SWAP, THRU, TIMES, TO, WAIT, WHEN, WITH, WRITE and also the names of all the intrinsic functions.

See also

  • ALGOL 58
  • ALGOL 68
  • Algol-W
  • Atlas Autocode
  • CORAL66
  • Edinburgh IMP
  • Jensen's Device
  • ISWIM
  • JOVIAL
  • Simula
  • S-algol

Notes

  1. The name of the family is sometimes given in mixed-case (Algol 60), and sometimes in all-uppercase (ALGOL 68). For simplicity, this article uses ALGOL.
  2. Revised Report on the Algorithmic Language Algol 60 (1963). Retrieved on Jun 8, 2007.
  3. Revised Report on the Algorithmic Language ALGOL 68 (1973). Retrieved on Jun 8, 2007.
  4. Knuth, Donald E. (1964) Backus Normal Form vs. Backus Naur Form. Communications of the ACM 7(12):735-736
  5. “Hints on Programming Language Design”, C.A.R. Hoare, December 1973. Page 27. (This statement is sometimes erroneously attributed to Edsger Dijkstra, also involved in implementing the first ALGOL 60 compiler.)
  6. Aho, Alfred V.; Ravi Sethi, Jeffrey D. Ullman (1986). Compilers: Principles, Techniques, and Tools, 1st edition, Addison-Wesley. ISBN 0-201-10194-7. , Section 7.5, and references therein
  7. “803 ALGOL” The manual for Elliott 803 ALGOL
  8. GOST 10859 standard. Retrieved on Jun 5, 2007.

References

  • B. Randell and L.J. Russell, ALGOL 60 Implementation: The Translation and Use of ALGOL 60 Programs on a Computer. Academic Press, 1964. The design of the Whetstone Compiler. One of the early published descriptions of implementing a compiler. See the related papers: Whetstone Algol Revisited, and The Whetstone KDF9 Algol Translator by B. Randell
  • E. W, Dijkstra, Algol 60 translation: an algol 60 translator for the x1 and making a translator for algol 60, report MR 35/61. Mathematisch Centrum, Amsterdam, 1961. [1]

External links


Source: adapted by the editor from Wikipedia, the free encyclopedia; from the article "ALGOL". Image Credit.



Topics by Level of Interest: Algol

Topics sorted by level of Interest Level (1=low, 600=high)     Topics sorted Alphabetically Level (1=low, 600=high)
ALGOL 68 77     ABC ALGOL 3
Algol 65     Algol 65
Perseus Algol 19     Algol (alternative meanings) 2
Algol (Phantasy Star) 15     Algol (fanzine) 3
Algol (film) 13     Algol (film) 13
ALGOL 58 12     Algol (Phantasy Star) 15
USS Algol 12     ALGOL 58 12
ALGOL 68C 10     ALGOL 68 77
USS Algol (AKA-54) 9     ALGOL 68C 10
Interactive ALGOL 68 7     ALGOL 68G 7
ALGOL 68G 7     ALGOL 68S 2
Transmissions from Empire Algol 6     ALGOL Bulletin 3
ALGOL X 6     ALGOL N 2
Caravans to Empire Algol 5     ALGOL object code 3
ALGOL W 5     Algol variable 4
Algol variable 4     ALGOL W 5
Dartmouth ALGOL 30 4     ALGOL X 6
ALGOL Bulletin 3     ALGOL Y 3
Elliott ALGOL 3     Caravans to Empire Algol 5
ALGOL Y 3     Dartmouth ALGOL 30 4
ALGOL object code 3     Elliott ALGOL 3
Algol (fanzine) 3     Interactive ALGOL 68 7
ABC ALGOL 3     Perseus Algol 19
Algol (alternative meanings) 2     Transmissions from Empire Algol 6
ALGOL N 2     USS Algol 12
ALGOL 68S 2     USS Algol (AKA-54) 9

Source: the editor, created by/for EVE to gauge likely levels of human interest in linguistically triggered topics (compiled across various sources, such as Wikipedia and specialty expression glosses).

Synonyms: Algol
Position Synonyms (sorted by strength)

Noun

COBOL.

Expression

algorithmic language.
Source: Eve, based on meta analysis. Top

Computed Synonyms: Algol

 Rank

 Intensity 

 Word

 Synonyms

 Synonyms of synonym

 1   6.0484   Algol     algorithmic language     programming like language   
 2   2.2096   Algol     COBOL     common business oriented language, computer language, SNOBOL, visual age, high level language   
 3   1.1191   Algol     visual age     computer language, programming language, COBOL, Java   
 4   1.0094   Algol     basic     fundamental, primary, essential, main, principal   
 5   1.0094   Algol     c     carbon, centigrade, coal, coulomb, do   
 6   1.0094   Algol     Java     coffee, cafe, bar, pub, inn   
 7   1.0092   Algol     FORTRAN     formula translator, FORTRN, COBOL, c, basic   
 8   1.0084   Algol     computer language     machine language, programming language, computer code, language, assembler   
 9   1.0082   Algol     programming language     computer language, program language, a programming language, automatic programming language, Alphabetical list of programming languages   
Source: calculated by Eve using graph theory. "Intensity" is a score indicating the number of overlapping cliques where the word pair is found (an integer before the decimal); the first digit after the decimal is the number of overlapping terminal characters up to 9; the second characters is number of leading common characters up to 9; the last two digits measure the Levenshtein distance subtracted from 100. Top

Computed Expressions: Algol

 Rank

 Intensity 

 Expression

 Synonyms

 Synonyms of synonym

 1   1.0177   Algol extended for design     UAE dirham     Moroccan dirham, mad   
Source: calculated by Eve using graph theory. "Intensity" is a score indicating the number of overlapping cliques where the word pair is found (an integer before the decimal); the first digit after the decimal is the number of overlapping terminal characters up to 9; the second characters is number of leading common characters up to 9; the last two digits measure the Levenshtein distance subtracted from 100. Top

Translations: Algol

Language Translations (or nearest inflections or synonyms, in parentheses)
Armenian ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Armenian, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Armjanski Yazyk ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Armjanski Yazyk, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Balgarski ALGOL (ALGOL). Additional references: Balgarski, Bulgaria, Greece, Algol. (volunteer & more translations)
Bohemian programski jezik (algol, basic, c, cobol, Fortran), algoritamski jezik (ALGOL), Algol (Algol). Additional references: Bohemian, Czech Republic, Algol. (volunteer & more translations)
Bulgarian ALGOL (ALGOL). Additional references: Bulgarian, Bulgaria, Greece, Algol. (volunteer & more translations)
Central Danish ALGOL (ALGOL, algorithmic language). Additional references: Central Danish, Denmark, Germany, Algol. (volunteer & more translations)
Cestina programski jezik (algol, basic, c, cobol, Fortran), algoritamski jezik (ALGOL), Algol (Algol). Additional references: Cestina, Czech Republic, Algol. (volunteer & more translations)
Chinese Simplified 大陵五 (Algol). Additional references: Chinese Simplified, China, Brunei, Algol. (volunteer & more translations)
Chinese Traditional 大陵五 (Algol). Additional references: Chinese Traditional, China, Brunei, Algol. (volunteer & more translations)
Croatian programski jezik (Algol, basic, c, COBOL, FORTRAN), algoritamski jezik (Algol). Additional references: Croatian, Croatia, Algol. (volunteer & more translations)
Czech programski jezik (algol, basic, c, cobol, Fortran), algoritamski jezik (ALGOL), Algol (Algol). Additional references: Czech, Czech Republic, Algol. (volunteer & more translations)
Danish ALGOL (ALGOL, algorithmic language). Additional references: Danish, Denmark, Germany, Algol. (volunteer & more translations)
Dansk ALGOL (ALGOL, algorithmic language). Additional references: Dansk, Denmark, Germany, Algol. (volunteer & more translations)
Dari زبان الگول (Algol). Additional references: Dari, Iran, Indo-European, Algol. (volunteer & more translations)
Deutsch Algol (Algol). Additional references: Deutsch, Germany, Austria, Algol. (volunteer & more translations)
Dutch Algol (Algol). Additional references: Dutch, Netherlands, Aruba, Algol. (volunteer & more translations)
Ena ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Ena, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Ermeni Dili ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Ermeni Dili, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Ermenice ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Ermenice, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Finnish algol (Algol, algorithmic language). Additional references: Finnish, Finland, Russia (Europe), Algol. (volunteer & more translations)
Français Algol (Algol), langage algorithmique (algorithmic language, Algol). Additional references: Français, France, Algeria, Algol. (volunteer & more translations)
French Algol (Algol), langage algorithmique (algorithmic language, Algol). Additional references: French, France, Algeria, Algol. (volunteer & more translations)
Gaelg Rollage y Jouyll (Algol). Additional references: Gaelg, United Kingdom, Algol. (volunteer & more translations)
Gailck Rollage y Jouyll (Algol). Additional references: Gailck, United Kingdom, Algol. (volunteer & more translations)
German Algol (Algol). Additional references: German, Germany, Austria, Algol. (volunteer & more translations)
Greek αστέρασ αλγόλ ή βήτα του περσέωσ (Algol), αλγοριθμική γλώσσα (Algol, algorithmic language), AED (Algol extended for design, UAE dirham). Additional references: Greek, Greece, Albania, Algol. (volunteer & more translations)
Greek (transliteration) asteras algol i vita toi perseos (Algol), algorithmiki glossa (Algol, algorithmic language), aed (Algol extended for design, UAE dirham). Additional references: Greek, Greece, Albania, Algol. (volunteer & more translations)
Haieren ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Haieren, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Hanguk Mal 프로그램언어 (Algol), 【천문】 알골성 (Algol), 알골 프로그래밍 언어 (ALGOL), 알골 (Algol). Additional references: Hanguk Mal, Korea, South, Korea, Algol. (volunteer & more translations)
Hanguohua 프로그램언어 (Algol), 【천문】 알골성 (Algol), 알골 프로그래밍 언어 (ALGOL), 알골 (Algol). Additional references: Hanguohua, Korea, South, Korea, Algol. (volunteer & more translations)
High German Algol (Algol). Additional references: High German, Germany, Austria, Algol. (volunteer & more translations)
Hochdeutsch Algol (Algol). Additional references: Hochdeutsch, Germany, Austria, Algol. (volunteer & more translations)
Italian algol (Algol). Additional references: Italian, Italy, Croatia, Algol. (volunteer & more translations)
Japanese アルゴル (Algol), アルゴール (Algol). Additional references: Japanese, Japan, Taiwan, Algol. (volunteer & more translations)
Korean 프로그램언어 (Algol), 【천문】 알골성 (Algol), 알골 프로그래밍 언어 (ALGOL), 알골 (Algol). Additional references: Korean, Korea, South, Korea, Algol. (volunteer & more translations)
Manx Rollage y Jouyll (Algol). Additional references: Manx, United Kingdom, Algol. (volunteer & more translations)
Manx Gaelic Rollage y Jouyll (Algol). Additional references: Manx Gaelic, United Kingdom, Algol. (volunteer & more translations)
Parsi زبان الگول (Algol). Additional references: Parsi, Iran, Indo-European, Algol. (volunteer & more translations)
Persian زبان الگول (Algol). Additional references: Persian, Iran, Indo-European, Algol. (volunteer & more translations)
Persian (Farsi) زبان الگول (Algol). Additional references: Persian (Farsi), Iran, Indo-European, Algol. (volunteer & more translations)
Portuguese Algol (Algol, algorithmic language). Additional references: Portuguese, Portugal, Angola, Algol. (volunteer & more translations)
Ruotsi ALGOL (Algol, algorithmic language). Additional references: Ruotsi, Sweden, Finland, Algol. (volunteer & more translations)
Russian Алгол (ALGOL), Алгол 68 (ALGOL 68). Additional references: Russian, Russia, China, Algol. (volunteer & more translations)
Russian (transliteration) algol (ALGOL), algol 68 (ALGOL 68). Additional references: Russian, Russia, China, Algol. (volunteer & more translations)
Russki Алгол (ALGOL), Алгол 68 (ALGOL 68). Additional references: Russki, Russia, China, Algol. (volunteer & more translations)
Russki (transliteration) algol (ALGOL), algol 68 (ALGOL 68). Additional references: Russki, Russia, China, Algol. (volunteer & more translations)
Serbian (transliteration) programski jezik (programming language, Algol, COBOL, computer language, Java), grupa vrlo postojanih organski (Algol). Additional references: Serbian (transliteration), Algol. (volunteer & more translations)
Sjaelland ALGOL (ALGOL, algorithmic language). Additional references: Sjaelland, Denmark, Germany, Algol. (volunteer & more translations)
Slovak algol (Algol). Additional references: Slovak, Slovakia, Hungary, Algol. (volunteer & more translations)
Slovakian algol (Algol). Additional references: Slovakian, Slovakia, Hungary, Algol. (volunteer & more translations)
Somkhuri ծրագրավորման բարձր մակարդակի լեզու (Algol). Additional references: Somkhuri, Armenia, Azerbaijan, Algol. (volunteer & more translations)
Spanish lenguaje algorítmico (algol, algorithmic language). Additional references: Spanish, Spain, Mexico, Algol. (volunteer & more translations)
Suomea algol (Algol, algorithmic language). Additional references: Suomea, Finland, Russia (Europe), Algol. (volunteer & more translations)
Suomi algol (Algol, algorithmic language). Additional references: Suomi, Finland, Russia (Europe), Algol. (volunteer & more translations)
Svenska ALGOL (Algol, algorithmic language). Additional references: Svenska, Sweden, Finland, Algol. (volunteer & more translations)
Swedish ALGOL (Algol, algorithmic language). Additional references: Swedish, Sweden, Finland, Algol. (volunteer & more translations)
Turkish bilgisayar cebir dili (Algol), algol (Algol). Additional references: Turkish, Turkey, Bulgaria, Algol. (volunteer & more translations)
Source: Eve, based on a combination of meta analysis and graph theory (for near and back translations). Top

Constructed Language Translations: Algol

Language Translations for “Algol” or closest synonym(s); back translations in parentheses.
Athag Athagalgathagol (Algol). Additional references: Athag, Algol. (volunteer)
Double Dutch Agalgagol (Algol). Additional references: Double Dutch, Algol. (volunteer)
Leet 4|_&()|_ (Algol). Additional references: Leet, Algol. (volunteer)
Oppish Opalgopol (Algol). Additional references: Oppish, Algol. (volunteer)
Pig Latin Algolway (Algol). Additional references: Pig Latin, Algol. (volunteer)
Terran B algolam (Algol). Additional references: Terran B, Algol. (volunteer)
Ubbi Dubbi Ubalgubol (Algol). Additional references: Ubbi Dubbi, Algol. (volunteer)
Source: compiled by the editor. Top