ALGO
Paradigmprocedural, imperative, structured
FamilyALGOL
DeveloperBendix Corporation
First appeared1961 (1961)
Typing disciplinestatic, strong
ScopeLexical
Implementation languageAssembly
PlatformBendix G-15
Influenced by
ALGOL 58

ALGO is an algebraic programming language developed for the Bendix G-15 computer.[1]

ALGO was one of several programming languages inspired by the Preliminary Report on the International Algorithmic Language written in Zürich in 1958. This report underwent several modifications before becoming the Revised Report on which most ALGOL implementations are based. As a result, ALGO and other early ALGOL-related languages have a very different syntax from ALGOL 60.

Example

Here is the Trabb Pardo – Knuth algorithm in ALGO:

TITLE TRABB PARDO-KNUTH ALGORITHM
SUBSCript I,J
DATA A(11)
FORMAt FI(2DT), FLARGE(3D)
PROCEDURE F(T=Z)
BEGIN
Z=SQRT(ABS(T))+5*T^3
END
FOR I=0(1)10
A[I]=KEYBD
FOR J=0(1)10 BEGIN
I=J-10
F(A[I]=Y)
PRINT(FI)=I
IF Y > 400
GO TO LARGE
PRINT(FL)=Y
GO TO NEXT
LARGE: PRINT(FLARGE)=999
NEXT: CARR(1) END
2END

Remarks

  1. A title is the only type of comment allowed. Line numbers were inserted by the editor.
  2. Integer data type. The lower-case letters are not typos, but reflect the way in which ALGO code was presented in the original documentation.
  3. Only the size of an array can be specified, lower bound is always zero.
  4. The first format calls for a two-digit number followed by a tab, the second for a three digit number.
  5. The syntax of ALGO's procedure implementations is slightly different from that given in the Zurich report. Functions as defined by the Zürich report are not implemented.
  6. The syntax here is from the Zürich report and is also consistent with various 1950s-era autocodes.
  7. KEYBD reads a numeric value from the terminal.

See also

References

  1. "The Bendix G-15 General Purpose Digital Computer System". Archived from the original on 4 December 2004. Retrieved 10 July 2020.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.