Algams

An algorithmic language developed for use mainly on medium-power electronic computers. It was developed in 1963–1966 by the Group for Automatic Programming for Medium-type Computers (GAMS), appointed by the commission for comprehensive collaboration of the academies of sciences of socialistic countries. It is supposed to be a standard language for the exchange of algorithms between socialistic countries. It is based on the language Algol-60 (cf. Algol), on which certain restrictions were imposed in order to facilitate the translation process. The most important restrictions include the prohibition of a recursive use of procedures, the demand of a specification of a procedure's formal parameters, the description of identifiers (except for labels) prior to their use, and a simplified structure of the naming expressions. These restrictions are related to those imposed on Algol-60 in the unified language known as the Algol-60 subset. At the same time new features were introduced into Algams, including both external and part identifiers, which do not exist in Algol-60. External identifiers are names of arrays recommended for inclusion in the external memory of the machine. Reading and writing of the external arrays is achieved by a standard exchange procedure. Part identifiers, preceding the arrays, isolate parts of the program which may be stored in the external memory, and are recalled to the working memory upon entry into the respective array. In this way the effectiveness of the language is enhanced, while the capacity of the working memory of the machine remains relatively small. Moreover, Algams contains detailed descriptions of input and output procedures, as well as a more precise definition of procedure bodies in the case of a description of them in other languages.

#### References[edit]

[1] |  "Description of the language ALGAMS" , Algorithms and algorithmic languages : 3 , Moscow (1968) pp. 3–56 (In Russian)

|

[2] |  E.Z. Lyubimskii, V.V. Martynyuk, "Refinement of the definition of the Algams language" Programming and Computer Software , 2 (1976) pp. 73–74 Programmirovanie , 1 (1976) pp. 87–88