ALGOL X

Last updated

ALGOL X
Paradigms Multi-paradigm: procedural, imperative, structured
Family ALGOL
Designed by Douglas T. Ross
Developer International Federation for Information Processing (IFIP) IFIP Working Group 2.1
First appeared1966;57 years ago (1966)
Typing discipline Static, strong
Scope Lexical
Implementation languageAutomated Engineering Design (AED-0)
Influenced by
ALGOL 60
Influenced
ALGOL W, ALGOL N, ALGOL 68

ALGOL X was the code name given to a programming language which was being developed as a successor to ALGOL 60, by the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi, which supports and maintains the languages ALGOL 60 and ALGOL 68. [1] It attempted to find a "short-term solution to existing difficulties". ALGOL N and ALGOL W were two other ALGOL versions proposed to fulfill this need.

Contents

According to de Morgan, "... the Algol 60 devotees had not been idle... they set out to eliminate the dreaded Remaining Trouble Spots. They called their Algol 60 'Modified'." [2]

One ALGOL X compiler is known to have existed. It was written with the Automated Engineering Design (AED-0) system, also termed ALGOL Extended for Design, by Douglas T. Ross of the Massachusetts Institute of Technology (MIT). [3] [4]

Example class definition: (an extract from AB26.2.2)

class expression is constant (real value) ora variable (string printname)    oraclass pair is (sum ora difference ora product         ora quotient)((expression) left operand, right operand, derivative);

Example class usage:

 (expression) X; (constant) Y; (pair) Z; (product) Q;   X := Y:= constant(10.5);  Z := Q := product(variable("ALPHA"), constant(2.), constant(2.))

"Initially the proposal for an update to Algol was Algol X, with Algol Y being the name reserved for the corresponding metalanguage. Van Wijngaarden produced a paper for the 1963 IFIP programming language committee, entitled “Generalized Algol,” which contained the basic concepts which were eventually incorporated into Algol 68." [5]

The ALGOL Bulletin on ALGOL X

Related Research Articles

<span class="mw-page-title-main">Peter Naur</span> Danish computer science pioneer

Peter Naur was a Danish computer science pioneer and Turing award winner. He is best remembered as a contributor, with John Backus, to the Backus–Naur form (BNF) notation used in describing the syntax for most programming languages. He also contributed to creating the language ALGOL 60.

<span class="mw-page-title-main">Peter Landin</span> British computer scientist (1930–2009)

Peter John Landin was a British computer scientist. He was one of the first to realise that the lambda calculus could be used to model a programming language, an insight that is essential to the development of both functional programming and denotational semantics.

<span class="mw-page-title-main">ALGOL 68</span> Programming language

ALGOL 68 is an imperative 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 more rigorously defined syntax and semantics.

<span class="mw-page-title-main">Adriaan van Wijngaarden</span> Dutch mathematician and computer scientist

Adriaan "Aad" van Wijngaarden was a Dutch mathematician and computer scientist. Trained as a mechanical engineer, Van Wijngaarden emphasized and promote the mathematical aspects of computing, first in numerical analysis, then in programming languages and finally in design principles of such languages.

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.

John Edward Lancelot Peck was the first permanent Head of Department of Computer Science at the University of British Columbia (UBC). He remained the Head of Department from 1969 to 1977.

Barry James Mailloux obtained his Master of Science (M.Sc.) in numerical analysis in 1963. From 1966, he studied at Amsterdam's Mathematisch Centrum under Adriaan van Wijngaarden, earning a Doctor of Philosophy (Ph.D.) in 1968.

<span class="mw-page-title-main">Cornelis H. A. Koster</span> Dutch computer scientist (1943–2013)

Cornelis Hermanus Antonius "Kees" Koster was a Dutch computer scientist who was a professor in the Department of Informatics at the Radboud University Nijmegen in the Netherlands.

<span class="mw-page-title-main">Richard Bird (computer scientist)</span>

Richard Simpson Bird was a Supernumerary Fellow of Computation at Lincoln College, University of Oxford, in Oxford England, and former director of the Oxford University Computing Laboratory.

Lambert Guillaume Louis Théodore Meertens or L.G.L.T. Meertens is a Dutch computer scientist and professor. As of 2020, he is a researcher at the Kestrel Institute, a nonprofit computer science research center in Palo Alto's Stanford Research Park.

Douglas Taylor "Doug" Ross was an American computer scientist pioneer, and chairman of SofTech, Inc. He is most famous for originating the term CAD for computer-aided design, and is considered to be the father of Automatically Programmed Tools (APT), a programming language to drive numerical control in manufacturing. His later work focused on a pseudophilosophy he developed and named Plex.

<span class="mw-page-title-main">Willem van der Poel</span> Dutch computer scientist

Willem Louis van der Poel is a pioneering Dutch computer scientist, who is known for designing one of the first computers to be designed in the Netherlands, the Zeer Eenvoudige Binaire Reken Automaat (ZEBRA), translated as Very Simple Binary Automatic Calculator.

Charles Hodgson Lindsey was a British computer scientist, most known for his involvement with the programming language ALGOL 68.

Klaus Samelson was a German mathematician, physicist, and computer pioneer in the area of programming language translation and push-pop stack algorithms for sequential formula translation on computers.

<span class="mw-page-title-main">Maurice Nivat</span> French computer scientist

Maurice Paul Nivat was a French computer scientist. His research in computer science spanned the areas of formal languages, programming language semantics, and discrete geometry. A 2006 citation for an honorary doctorate (Ph.D.) called Nivat one of the fathers of theoretical computer science. He was a professor at the University Paris Diderot until 2001.

Eiiti Wada is a computer scientist and emeritus professor at the University of Tokyo and the Research Director of Internet Initiative Japan (IIJ), a computer network technology company. He is one of the creators of the Happy Hacking Keyboard.

IFIP Working Group 2.1 on Algorithmic Languages and Calculi is a working group of the International Federation for Information Processing (IFIP).

Charles Katz is an American mathematician and computer scientist known for his contributions to early compiler development in the 1950s.

Michel Sintzoff was a Belgian mathematician and computer scientist.

Joseph Henry Wegstein was an American computer scientist.

References

  1. Swierstra, Doaitse; Gibbons, Jeremy; Meertens, Lambert (2 March 2011). "ScopeEtc: IFIP21: Foswiki". Foswiki. Retrieved 13 October 2020.
  2. de Morgan, R. (July 1977). "The Algollers" (PDF). ALGOL Bulletin. 41: 8–9. Retrieved 11 October 2020 via Computer History Museum.
  3. Ross, Douglas T. (October 1966). "An Algorithmic Theory of Language (AB26.2.2)". Defense Technical Information Center. Massachusetts Institute of Technology. p. 6. Archived from the original on 26 June 2013. Retrieved 12 August 2020.
  4. Ross, D. T. (August 1967). "AB26.2.2 Features Essential for a Workable ALGOL X". ACM SIGPLAN Notices: ALGOL Bulletin. Association for Computing Machinery: Digital Library. 26 (2). doi:10.1145/1139498.1139500. S2CID   38156680 . Retrieved 12 August 2020.
  5. "Adriaan Van Wijngaarden" (PDF). Archived from the original (PDF) on 19 October 2013.