Оператор = делает две вещи:
- Оценивает правую часть
- Присваивает результат переменной слева
Чтобы проиллюстрировать это, рассмотрим этот пример:
A = 1 -- A is now 1
X = A + A + A -- X is now 3, and A hasn't changed
X = X + 1 -- X is now 4, and A hasn't changed
Теперь давайте посмотрим на ваш оригинальный код и напишем значение простым языком.
A=1 -- Create a variable 'A' and assign it the value of one
X=A -- Create the variable 'X' and assign it the current value of 'A'
X=X+1 -- Change 'X' by assigning it the current value of 'X' plus one
Обратите внимание, как эти комментарии читаются как «инструкции» для компьютера, а не математические уравнения. Lua (и программирование в целом) следует интерпретировать как набор инструкций, выполняемых сверху вниз.
Однако, как упоминает Егор Скриптунов в предыдущих комментариях, таблицы ведут себя по-разному. См. Программирование в Lua - Глава 2.5 для более подробного объяснения различия таблиц.