Перейти к основному содержимому

О разделе

Длинные листинги (от ~15 строк) вынесены в каталог code.spirzen.ru и подгружаются в статьях через ExternalCodeEmbed — так HTML энциклопедии не раздувается, а код остаётся с подсветкой, вкладками и сериями "шаг 1…N". Короткие фрагменты (одна строка, пара выражений) по-прежнему прямо в markdown. Диаграммы mermaid и интерактив — на месте или в play.spirzen.ru.

Раздел охватывает классический Lua (в материалах ориентир — Lua 5.4) и Luau (диалект Roblox на базе Lua 5.1). В разных главах могут упоминаться фичи конкретной версии — смотрите пометки в тексте.

Lua (лу́а, "луна") — встраиваемый скриптовый язык из PUC-Rio (Бразилия, с 1993 года). Таблицы заменяют массивы и объекты; метатаблицы дают ООП и перегрузку операций. Материалы раздела опираются на официальную документацию lua.org и обобщают проверенные формулировки из энциклопедических источников (в том числе статьи о Lua в Википедии).

Сначала: Что такое код и как он работает — общая база — код, блок кода, компиляция и интерпретация, исходный, байт- и машинный код; в этом разделе — синтаксис и особенности языка.


Две дорожки

КонтекстВерсияНа что обратить внимание
Чистый Lua, LÖVE, Neovim, OpenResty5.3–5.4//, table.unpack, <const>, <toclose>, generational GC
Roblox Studio / Luau5.1 + расширенияаннотации типов, task.*, --!strict, другой захват i в for, ограниченные io/os

Маршрут Luau для Roblox

Если цель — игры на Roblox, идите параллельно с разделом Разработка игр:

ШагLuau (этот раздел)Roblox (геймдев)
1Первая программа на Lua — первая программаRoblox Studio — первая игра и настройки Place — Studio
2Синтаксис и пунктуация в LuaФункции, замыкания и анонимные функцииПрактикум — обби на Roblox — обби
3Luau - типизированный диалект Lua от Roblox — Luau и RobloxRoblox — механика, монетизация и продвижение — продвижение

Рекомендуемый порядок

  1. Основы языка — философия и модель выполнения
  2. История, экосистема, первая программа
  3. Синтаксис и типы: Синтаксис и пунктуация в LuaТипы данных и объявление переменных в LuaУправляющие конструкции и циклы в LuaФункции, замыкания и анонимные функции
  4. Метатаблицы, модули, GC, корутины
  5. Luau и Roblox — после базового Lua

Справочник: Справочник по Lua · Самопроверка: Lua и Luau — чек-лист


Зачем этот раздел

Подборка по Lua и Luau в энциклопедии: синтаксис, первая программа и смежные темы. Выберите один язык для старта, пройдите маршрут до первой рабочей программы — затем переходите к следующему языку или стеку.


С чего начать

ШагМатериалЗачем
1Первая программаЗапуск и синтаксис

Частые ошибки при старте

ОшибкаЧто делать
Прыжки между языкамиЗакройте одну "первую программу", потом сравнивайте
Код без запускаВыполните пример локально
Сразу большой фреймворкСначала база раздела, потом REST/UI

Что попробовать

  1. Шаг 1 из таблицы.
  2. Три непонятных термина — найдите статьи в оглавлении раздела.
  3. Другой язык — только после своей рабочей первой программы.


В подборках

Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:

Бэкенд и серверная разработкаSwift — о разделе, Cobol — о разделе, Rust — о разделе, Fortran — о разделе, Groovy — о разделе, Lisp — о разделе.