2.4.1 – Порции
Единица исполнения Lua называется chunk (порция). Порция – это любая последовательность операторов
Lua. Операторы в порции
могут разделяться запятыми:
chunk ::= {stat [';']}
Пустого оператора в языке нет, поэтому выражение ';;' не допустимо.
Lua воспринимает порцию как неименованную функцию с произвольным набором
параметров (смотрите §2.5.9). Порция может определять локальные
переменные и возвращать значения.
Порция может храниться в файле или в строке базовой программы. В момент
запуска порции на выполнение осуществляется компиляция ее в промежуточный
байт-код (инструкции для виртуальной машины). Затем полученный код исполняется
виртуальной машиной.
Порции могут быть компилированы в бинарный вид; подробнее в описании
программы luac.
Текстовые файлы с кодом и двоичные прекомпилированные части кода равноправны; Lua автоматически
определяет тип файла и действует соответственно.
|