BNF_ru
Краткая памятка по грамматике языка
Краткая памятка по грамматике языка¶Грамматика¶Программа -- это просто последовательность слов (токенов/tokens). Слова разделяются пробелами; любые пробельные символы в любом количестве обозначат просто разделитель. Первый символ `#' в строке и все идущие за ним до конца строки символы игнорируются. Это комментарии. Выражения (statements) состоят из слов. Выражения¶Группировка¶Если вам нужно, чтобы набор выражений фигурировал в программе, как одно выражение, вы можете сгруппировать выражения, заключив их в блок begin/end. Это одно выражением, состоящие из множества вложенных в него: begin ...STATEMENTS... end Рисование и перемещения¶draw VAR-OR-VAL VAR-OR-VAL jump VAR-OR-VAL VAR-OR-VAL scale VAR-OR-VAL right VAR-OR-VAL left VAR-OR-VAL width VAR-OR-VAL Аффинные преобразования¶affinescale VAR-OR-VAL VAR-OR-VAL # Масштабирование осей affinerotate VAR-OR-VAL VAR-OR-VAL # Поворот осей affinematrix VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL # Матрица Цвета¶color VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL # красный, жёлтый, зелёный bgcolor VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL # красный, жёлтый, зелёный mixcolor VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL VAR-OR-VAL # красный, жёлтый, зелёный и множитель Переменные и вычисления¶Присвоения: set VAR VAR-OR-VAL # VAR := VAR-OR-VAL sin VAR VAR-OR-VAL # VAR := sin(VAR-OR-VAL) cos VAR VAR-OR-VAL # VAR := cos(VAR-OR-VAL) exp VAR VAR-OR-VAL # VAR := exp(VAR-OR-VAL) log VAR VAR-OR-VAL # VAR := log(VAR-OR-VAL) sqrt VAR VAR-OR-VAL # VAR := sqrt(VAR-OR-VAL) Вычисления: add VAR VAR-OR-VAL # VAR := VAR + VAR-OR-VAL sub VAR VAR-OR-VAL # VAR := VAR - VAR-OR-VAL mul VAR VAR-OR-VAL # VAR := VAR * VAR-OR-VAL div VAR VAR-OR-VAL # VAR := VAR / VAR-OR-VAL mod VAR VAR-OR-VAL # VAR := VAR % VAR-OR-VAL pow VAR VAR-OR-VAL # VAR := VAR ** VAR-OR-VAL Изменения: incr VAR # VAR := VAR + 1 decr VAR # VAR := VAR - 1 neg VAR # VAR := - VAR abs VAR # VAR := | VAR | Условия¶if CONDITION then STATEMENT if CONDITION then STATEMENT else STATEMENT где CONDITION -- это три слова: VAR-OR-VAL OPERATION VAR-OR-VAL где OPERATION -- одно из lt, gt, le, ge, eq или ne. Циклы¶iterate VAR-OR-VAL STATEMENT repeat STATEMENT until CONDITION while CONDITION STATEMENT Контекст¶local STATEMENT # локализация всего контекста save STATEMENT # локализация только значений переменных transform STATEMENT # локализация только состояния черепашки Процедуры¶procedure NAME STATEMENT # декларация процедуры call NAME # вызов процедуры Другие выражения¶nop # не делать ничего |
► Sign in to add a comment