На этом шаге мы разберем способы задания выражений и использования
операторов.
Оператор - это часть текста программы, которую интерпретатор преобразует в законченную инструкцию, выполняемую компьютером.
Оператор состоит из лексем - минимальных единиц языка, которые имеют смысл для интерпретатора. Под минимальной единицей понимается такая единица, которая не может быть представлена более мелкими единицами при дальнейшем ее синтаксическом разборе. В языке Perl лексемами могут быть:
Идентификатор - это последовательность букв, цифр и символа подчеркивания, начинающаяся с буквы или подчеркивания и используемая для именования переменных, функций, подпрограмм, дескрипторов файлов, форматов и меток в программе. Можно использовать любые идентификаторы в программе, если они не совпадают с ключевыми словами языка - предопределенными идентификаторами, которые имеют специальное значение в языке Perl (например, if, goto, unless и т.д.).
Литерал (буквальная константа) - символ или слово в языке программирования, определяющие в отличие от переменной свое собственное значение, а не имя другого элемента языка. В Perl литералами являются числа и строки. Например:
123 # Целое число. 23.56 # Вещественное число с фиксированной точкой. 2E+6 # Вещественное число с плавающей точкой. "Язык Perl" # Строковый литерал. 'Язык Perl' # Строковый литерал.
Знаки операций - один или более специальных символов, определяющих действия, которые должны быть выполнены над величинами, называемыми операндами. Выполняемые действия называются операциями, которые могут быть:
++$n; # Унарная операция (++). 23*$n; # Бинарная операция (*). $n >= 3 ? print "true" : print "false"; # Тернарная операция (?:).
Разделитель - это символ ";" (точка с запятой), которым завершается любой оператор и который сообщает об этом интерпретатору. Использование разделителя позволяет на одной строке задавать несколько операторов, хотя это и не принято в практике программирования, так как ухудшает читаемость текста программы.
В операторе все его лексемы могут отделяться любым числом пробельных символов, к которым относятся сам пробел, знак табуляции, символ новой строки, возврат каретки и символ перехода на новую строку. Поэтому один оператор можно записать на нескольких строках и для этого не надо использовать никакого символа продолжения, требующегося в других языках программирования.
Можно вообще не использовать пробельные символы в операторе, но для обеспечения читаемости программы мы рекомендуем отделять лексемы одним пробелом, тем более что могут встречаться ситуации, когда интерпретатор не однозначно выделяет лексемы из непрерывного потока символов.
В языке Perl часто используется понятие блока. Последовательность операторов Perl, определяющая область видимости переменных, называется блоком. На данный момент достаточно представлять блок как последовательность операторов, заключенную в фигурные скобки:
. . . . { оператор_1; . . . оператор_N; } . . . .
На следующем шаге мы остановимся на алфавите языка Perl.