ААААААААА! (язык программирования)

Материал из Абсурдопедии
Перейти к навигацииПерейти к поиску
Ошибка в программировании может оказаться неисправимой

AAAAAAAAAAAAAA!!!! — эзотерический язык программирования, программы на котором состоят только из символа A, пробела, восклицательного знака и запятой.

Синтаксис[править]

Комментарии на языке AAAAAAAAAAAAAA!!!! записываются в отдельную строку, начинающуюся с символа @. Тем не менее, все комментарии должны быть удалены перед интерпретацией. Символ перевода строки игнорируется, а многократное сочетание восклицательных знаков или пробелов рассматривается как единый символ без повторений.

Команды[править]

  • AA ААА n! Вывод символа, соответствующего текущему числу.
  • ААА АААА AA n! Ввод числа по индексу n.
  • ААА АА n! Перейти к метке n.
  • AAAAA n! Объявление метки n.
  • AAA AAAA AAA n! Пропустить команды.
  • AAAA AA n! Сдвиг индекса на n позиций назад.
  • AAAA AAAA n! Сдвиг индекса на n позиций вперёд.
  • AA AAAA AA! Завершение программы.
  • AAA A AAA n! Начало подпрограммы n
  • AAAA A AAA! Конец подпрограммы.
  • AAA A AA AAAA n! Конец подпрограммы, возвращает значение n.
  • AAAAAA n! Вызов подпрограммы n
  • AAAA, AAAA n! Очистка стека подпрограммы.
  • AAAA AAA n! Увеличение значения ячейки по индексу n.
  • AAAA AAA, n! Уменьшение значения ячейки по индексу n (для ненулевых значений).

Кроме того, язык AAAAAAAAAAAAAA!!!! позволяет модифицировать код в ходе выполнения программы с помощью команд:

  • AAAA, A n!
  • AAAA, AA A n!
  • AAAA, AA AAA n!
  • AAAAA, AA A n!
  • AAAAA, AA AAA n!
  • AAAAA, AAAAA!
  • AAAAA, AAAA A n!
  • AAAAA, AAAA AAA n!

Операторы[править]

  • AAAA = Цифра 0
  • ААА = Цифра 1
  • A = Цифра 2
  • AA A= Цифра 3
  • AAAA A = Индексы ячеек используемых в предыдущей команде.
  • ААААА, n = Получение значения по индексу n.
  • AA A, a b = Сумма (a+b)
  • AA AA, a b = Модуль разности (abs(a-b)).
  • ААА, a b = Произведение (a*b).
  • AA ААА, a b = Побитовое И (a и b).
  • AAAA, a b = Побитовое исключающее ИЛИ a (XOR b).
  • АААААА n, a b = Вызов подпрограммы n с параметрами a и b. Возврат значения.
  • ААААА А n, a = Вызов подпрограммы n с параметрами a и a. Возврат значения.
  • ААААА АА = Первый параметр.
  • ААААА ААА = Второй параметр.

Примеры программ[править]

Выводит набираемые на клавиатуре клавиши (бесконечно):

AAAAA A! AAA AAAA AA A! AA AAA AAAAA, A! AAA AA A! AA AAAA AA!

Выводит текст «He»:

AA AAA AA AA, AAA, AAA, AA A AAA, AA A AA A AA A AAA, AA A AA A!
AA AAA AA A, AAA AAAAA A AAAA, AAA!
AA AAAA AA! AAA A AAA AAAA! AAA A AA AAAA AAA, AA A, AAA AAA, AA A AA A AA A,
AAA AAA, AA A AA A! AAAA A AAA!

См. также[править]

Ссылки[править]