Главная
Новости
Строительство
Ремонт
Дизайн и интерьер




13.02.2021


07.02.2021


24.01.2021


24.01.2021


24.01.2021





Яндекс.Метрика

Альфа-язык

07.04.2022

Альфа-язык — расширенный диалект языка программирования Algol 60. Разработан в СССР в 1960-х гг под руководством Андрея Петровича Ершова.

Язык был дополнен типом «комплексный», над которым можно было выполнять все арифметические операции. В языке Альфа появилась возможность работы с массивами целиком, для чего было введено понятие многомерного значения и многомерной переменной и ряд других расширений, призванных приблизить Алгол к естественной математической нотации.

История создания

В дневнике Ершова сохранилась запись от 7 сентября 1958 года, помеченная им, как начало α-транслятора. При проектировании языка он отталкивался от идеи дать как можно более естественную форму для выражения алгоритмов вычислительной математики, которой руководствовались создатели Алгола (предварительная версия которого была опубликована в 1958). После публикации «Сообщении об алгоритмическом языке Алгол 60» было принято решение удалить все несущественные различия из проекта альфа-языка (известного тогда под неформальным названием сибирский), сделав его расширением Алгола-60.

Расширения

Комплексные числа

Для описания комплексных переменных использовалось ключевое слово комплексный. С комплексными числами работают все арифметические операции и большинство математических функций (sqrt, ln, exp, sin, cos, tan, sh, ch, th, arctan, arth, arcsin, arccos, arsh, arch) и операции сравнения на равенство и неравенство. Функции, являющиеся для комплексных аргументов многозначными, такие как квадратный корень или логарифм, вычисляют главное значение.

Многомерные значения и переменные

Для описания многомерных переменных (которые различаются от стандартных массивов Алгола) используется форма, вроде вещественный А — массив 2×3×5; , вместо ключевого слова массив, для более естественной записи, можно использовать ключевые слова вектор и матрица. Если a — двумерная матрица, то a [i,] будет обращением к её i-й строке, a [,j] — к j-му столбцу, а a [,] — ко всей матрице.

В отличие от массивов алгола, над многомерными значениями можно выполнять все арифметические и логические операции и стандартные функции. Арифметические операции +, -, /, ÷, ↑ (при возведении в нецелую степень) выполняются покомпонентно.