Unix Man (Справочное руководство)


BS(1)


BS(1)

НАЗВАНИЕ


bs - компилятор/интерпретатор программ умеренных размеров

СИНТАКСИС

bs [файл [аргумент ...]]

ОПИСАНИЕ


Язык bs - отдаленный потомок Бейсика и Снобола-4 с некоторыми дополнениями из языка C. Язык bs создан для тех задач программирования, в которых время разработки так же важно, как и полученная в результате скорость выполнения. Формальности об явления данных и манипуляции с файлами и процессами минимизированы. Построчная отладка, операторы trace и dump, а также подробные сообщения об ошибках выполнения упрощают тестирование программ. Более того, можно отлаживать незавершенные программы; внутренние функции могут тестироваться до того, как написаны внешние функции, и наоборот.

Если в командной строке указан аргумент файл, ввод начинается из него и продолжается с терминала. По умолчанию, операторы, прочитанные из файла, компилируются для последующего выполнения. Операторы, введенные с терминала, обычно выполняются немедленно (см. ниже операторы compile и execute). Если последняя операция - не присваивание, результат оператора-выражения печатается.

Программы на языке bs состоят из строк. Символом продолжения является \ в конце строки. Язык допускает строки следующего вида:

оператор метка оператор

Метка - это имя (см. ниже), за которым следует двоеточие. Метки и переменные могут иметь одни и те же имена.

Оператор языка bs - это выражение или ключевое слово, за которым следует 0 или более выражений. Некоторые ключевые слова (clear, compile, !, execute, include, ibase, obase и run) всегда выполняются, как только они откомпилированы.

Синтаксис операторов

выражение Целью выполнения выражения являются его побочные эффекты (значение, присваивание или вызов функции). Детали приводятся ниже, после описания типов операторов. break Выйти из самого внутреннего for/while цикла. clear Выполняется немедленно. Очистить таблицу имен и удалить скомпилированные операторы. compile [выражение] Выполняется немедленно. Откомпилировать последующие операторы (не принимая во внимание установленный режим немедленного выполнения). Необязательное выражение вычисляется и используется в качестве имени файла для последующего ввода. В последнем случае выполняется clear. continue Перейти к следующей итерации текущего for/while цикла. dump [имя] Напечатать имена и текущие значения всех нелокальных переменных. Если указана опция имя, сообщается только о данной переменной. После ошибки или прерывания выводится номер последнего оператора и (возможно) трассировка пользовательских функций. exit [выражение] Вернуться на системный уровень. Выражение возвращается в качестве кода завершения. execute Изменить режим выполнения на немедленный (прерывание дает аналогичный эффект). Эта команда не вызывает выполнения запомненных операторов (см. ниже команду run). for имя = выражение выражение оператор




- Начало -  - Назад -  - Вперед -