Top Qs
Timeline
Chat
Perspective

LYaPAS

Programming language From Wikipedia, the free encyclopedia

Remove ads

Logical Language for the Representation of Synthesis Algorithms (LYaPAS, Russian: ЛЯПАС) is a programming language created by Arkady Zakrevsky in the Soviet Union.

Quick Facts Paradigms, Designed by ...

LYaPAS was initially designed especially for non-numeric programming for the Soviet designed and built line of mainframe computers named Ural-1. LYaPAS uses octal numbers.

A further refinement of LYaPAS is LYaPAS-M.

Remove ads

History

Summarize
Perspective

The development started in the end of 1962,[1] while Zakrevsky was working at the Siberian Physical-Technical Institute (part of Tomsk State University).[2] The first translators were implemented in 1963.[1]

The first widely available book about the language was published in Russian (Логический язык для представления алгоритмов синтеза релейных устройств, 1966), which was soon translated and published in English (LYaPAS: a programming language for logic and coding algorithms, 1969). The book contained a collection of articles with full LYaPAS descriptions, some algorithms in the language and descriptions of programming environments for the Ural-1 and M-20 computers which operated at a speed of 100 and 20,000 operations per second, respectively.[1]

In 1974, LYaPAS-M, a new version of the language, appeared. Among other changes, this version was adapted for the character set common among the Soviet computers of the time, namely the first 100 characters of the GOST 10859 7-bit encoding.[1]

Zakrevsky later worked on LYaPAS at the Laboratory of System Programming and Logical Synthesis, of the Academy of Sciences of the Byelorussian SSR, since renamed the National Academy of Sciences of Belarus.[3][4][5][6][7][8][9]

Remove ads

Versions

Example

Example program in LYaPAS-M for calculating GCD of variables N and M:[1]

П1 N ↑–2 M;N=R N=M R=N ↑=1
П2 M=D **

Explanation:

  • Program is executed from left to right.
  • П1 and П2 are line labels.
  • Operation N puts the value of the integer variable into the implicit "current value" variable τ, which holds the result of the last operation.
  • Conditional branch operation ↑–2 moves the execution to line 2 if the current value is zero.
  • Expression M;N calculates remainder.
  • Expression =R assigns current value to variable R.
  • ↑=1 is an unconditional branch to line 1.
  • ** is the end marker.

All whitespaces are ignored, so the above program is equivalent to the one-liner:

П1N↑–2M;N=RN=MR=N↑=1П2M=D**

Bibliography

  • LYaPAS: a programming language for logic and coding algorithms. Edited by M. A. Gavrilov and A. D. Zakrevskii. Translated by Morton Nadler. New York, Academic Press, 1969. 475 p.

References

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads