LYaPAS

LYaPAS
Paradigm funktionell , strukturerad , modulär
Designad av Arkady D.Zakrevskij
Dök först upp 1964 ; 59 år sedan ( 1964 )
Maskinskrivningsdisciplin Dynamisk
Plattform Ural -1 stordator

Logical Language for the Representation of Synthesis Algorithms ( LYaPAS , ryska : ЛЯПАС ) är ett programmeringsspråk skapat av Arkady Zakrevsky i Sovjetunionen .

LYaPAS designades från början speciellt för icke-numerisk programmering för den sovjetdesignade och byggda raden av stordatorer med namnet Ural -1. LYaPAS använder oktala tal.

En ytterligare förfining av LYaPAS är LYaPAS-M.

Historia

Utvecklingen startade i slutet av 1962, medan Zakrevsky arbetade på Siberian Physical-Technical Institute (en del av Tomsk State University ). De första översättarna implementerades 1963.

Den första allmänt tillgängliga boken om språket gavs ut på ryska ( Логический язык для представления алгоритмов синтеза релейных устройств , 1966), som snart översattes och publicerades på engelska, alm. 69). Boken innehöll en samling artiklar med fullständiga LYaPAS-beskrivningar, några algoritmer på språket och beskrivningar av programmeringsmiljöer för Ural -1- och M-20- datorerna som arbetade med en hastighet av 100 respektive 20 000 operationer per sekund.

1974 dök LYaPAS-M, en ny version av språket, upp. Bland andra förändringar anpassades denna version för den teckenuppsättning som var vanlig bland dåtidens sovjetiska datorer, nämligen de första 100 tecknen i GOST 10859 7-bitars kodning.

Zakrevsky arbetade senare på LYaPAS vid Laboratory of System Programming and Logical Synthesis , vid Vetenskapsakademin i den vitryska SSR, sedan dess omdöpt till National Academy of Sciences of Vitryssland .

Versioner

Exempel

Exempelprogram i LYaPAS-M för beräkning av GCD för variablerna N och M:

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

Förklaring:

  • Programmet körs från vänster till höger.
  • П1 och П2 är radetiketter.
  • Operation N sätter värdet på heltalsvariabeln i den implicita "aktuella värde"-variabeln τ, som innehåller resultatet av den senaste operationen.
  • Villkorlig grenoperation ↑–2 flyttar exekveringen till rad 2 om det aktuella värdet är noll .
  • Uttryck M;N beräknar återstoden.
  • Uttryck =R tilldelar aktuellt värde till variabel R.
  • ↑=1 är en ovillkorlig gren till linje 1.
  • ** är slutmarkören.

Alla blanksteg ignoreras, så ovanstående program är likvärdigt med one-liner:

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

Bibliografi

  • LYaPAS: ett programmeringsspråk för logik och kodningsalgoritmer. Redigerad av MA Gavrilov och AD Zakrevskii. Översatt av Morton Nadler. New York, Academic Press, 1969. 475 sid.