Не каждый пользователь Rust имеет опыт работы с системами программирования, или необходимые знания в области компьютерной науки, поэтому мы добавили разъяснения терминов, которые могут быть незнакомы.
Когда компилятор компилирует программу, он делает целый ряд различных вещей.
Одна из вещей, которые он делает, это преобразует текст вашей программы в
'Абстрактное синтаксическое дерево,' или 'AST.' Это дерево является
представлением структуры вашей программы. Например, 2 + 3
может быть
преобразовано в дерево:
+
/ \
2 3
А 2 + (3 * 4)
будет выглядеть следующим образом:
+
/ \
2 *
/ \
3 4
Арность означает число аргументов, которые принимает функция или операция.
fn main() { let x = (2, 3); let y = (4, 6); let z = (8, 2, 6); }let x = (2, 3); let y = (4, 6); let z = (8, 2, 6);
В приведенном выше примере x
и y
имеют арность 2. z
имеет арность 3.
В программировании, выражение — это комбинация значений, постоянных,
переменных и функций, которая вычисляется в одно значение. Например, 2 + (3 * 4)
— выражение, вычисляющееся в значение 14
. Стоит заметить, что у
выражений могут быть побочные эффекты. Например, функция, участвующая в
выражении, может делать что-то ещё помимо непосредственно возврата значения.
В ранних языках программирования выражения и операторы были двумя отдельными видами синтаксиса: выражения вычислялись в выражение, а операторы производили действия с побочными эффектами. Однако поздние языки уже не имели такого чёткого разделения по этому критерию. В языке, ориентированном на выражения, почти любой оператор — это выражение, а значит, оно возвращает значение. Следовательно, эти выражения могут сами являться частью ещё больших выражений.
В программировании, оператор — это наименьший отдельный элемент языка, который
обозначает выполнение компьютером законченного действия. Например, в языке C
printf("42");
— это оператор.