Логический язык для представления алгоритмов синтеза ( ЛЯПАС , русский язык : ЛЯПАС ) - язык программирования, созданный Аркадием Закревским в Советском Союзе .
Парадигмы | Массив , функциональный , структурированный , модульный |
---|---|
Семья | APL [ необходима ссылка ] |
Разработано | Закревский Аркадий Дмитриевич |
Впервые появился | 1964 |
Печатная дисциплина | Динамический |
Платформа | ЭВМ Урал- 1 |
Под влиянием | |
APL [ необходима ссылка ] |
ЛЯПАС является расширением языка программирования APL , [ править ] и был первоначально разработан специально для нечисловых программирований для советских спроектировал и построили линию ЭВМ под названием Урал -1. ЛЯПАС использует восьмеричные числа.
Дальнейшая доработка ЛЯПАС - ЛЯПАС-М.
История
Разработка началась в конце 1962 года [1], когда Закревский работал в Сибирском физико-техническом институте (входит в состав Томского государственного университета ). [2] Первые переводчики были реализованы в 1963 году. [1]
Первая широко доступная книга об этом языке была опубликована на русском языке ( Логический язык для представления алгоритмов синтеза релейных устройств , 1966), которая вскоре была переведена и опубликована на английском языке ( LYaPAS: язык программирования для логических алгоритмов и алгоритмов кодирования , 1969). Книга содержала сборник статей с полными описаниями ЛЯПАС, некоторыми алгоритмами на языке и описаниями программных сред для ЭВМ Урал-1 и М-20, которые работали со скоростью 100 и 20 000 операций в секунду соответственно. [1]
В 1974 году появилась новая версия языка ЛЯПАС-М. Помимо других изменений, эта версия была адаптирована для набора символов, распространенного на советских компьютерах того времени, а именно для первых 100 символов 7-битной кодировки ГОСТ 10859 . [1]
Закревский позже работал на ЛЯПАСе в лаборатории системного программирования и логического синтеза , в Академии наук Белорусской ССР , поскольку переименован в Национальной академии наук Беларуси . [3] [4] [5] [6] [7] [8] [9]
Версии
Пример
Пример программы в ЛЯПАС-М для вычисления НОД переменных N и M: [1]
П1 N ↑ –2 M; N = RN = MR = N ↑ = 1П2 M = D **
Объяснение:
- Программа выполняется слева направо.
- П1 и П2 - метки линий.
- Операция
N
помещает значение целочисленной переменной в неявную переменную «текущее значение» τ, которая содержит результат последней операции. - Операция условного перехода
↑–2
перемещает выполнение в строку 2, если текущее значение равно нулю. - Выражение
M;N
вычисляет остаток. - Выражение
=R
присваивает текущее значение переменной R. ↑=1
является безусловным переходом к строке 1.**
это конечный маркер.
Все пробелы игнорируются, поэтому приведенная выше программа эквивалентна однострочному:
П1N ↑ –2M; N = RN = MR = N ↑ = 1П2M = D **
Библиография
- ЛЯПАС: язык программирования для логики и алгоритмов кодирования. Под редакцией М.А. Гаврилова и А.Д. Закревского. Перевод Мортона Надлера. Нью-Йорк, Academic Press, 1969. 475 с.
Рекомендации
- ^ Б с д е е г А. Д. Закревский, Н. Р. Торопов. Система программирования ЛЯПАС-М. Мн .: Наука и техника, 1978, 220 с.
- ^ Закревский Аркадий Дмитриевич - Электронная энциклопедия ТГУ.
- ^ "ЛЯПАС" . Энциклопедия языков программирования . Архивировано в июле 2008 года . Проверено 15 июля 2018 года .
- ^ Закревский А.Д. (1964). «ЛЯПАС: язык для представления алгоритмов синтеза». Материалы научного семинара по теоретическим и прикладным проблемам кибернетики . Киев.
- ^ Товщейн, М.Я. (1966). «ПП-ЛЯПАС-1, Переводчик первого уровня ЛЯПАС». Труды Сибирского технического института физики . Томск: Томский университет (248): 34–58.
- ^ Товштейн, М.Я. (1966). «Представление входной информации в ПП-ЛЯПАС-1». Труды Сибирского технического института физики . Томск: Томский университет (248): 23–33.
- ^ Закревский А.Д. (1966). «Алгоритмический язык ЛЯПАС и автоматизация синтеза дискретных автоматов». Томск: Томский университет. Цитировать журнал требует
|journal=
( помощь ) - ^ Закревский А.Д. (1966). «Первый уровень ЛЯПАС». Труды Сибирского технического института физики . Томск: Томский университет (248): 12–22.
- ^ Закревский А.Д. (1966). «Элементы метаязыка для первого уровня ЛЯПАС». Труды Сибирского технического института физики . Томск: Томский университет (248): 59–65.