Короткий ответ: не мёртв — жив и полезен. Если хочешь пробовать Defold, учить Lua однозначно стоит.
Более развернуто — по пунктам.
1) Где Lua реально используется (не полный список, но самые заметные места)
- Игры и движки: Defold (скрипты на Lua), LÖVE (Love2D), Solar2D (бывш. Corona SDK), Garry’s Mod, World of Warcraft — аддоны на Lua, Roblox — своя ветка (Luau).
- Встраиваемые скрипты и серверные системы: Nginx/OpenResty (Lua для запросов), Redis (скрипты на Lua), Tarantool (СУБД с Lua), Kong (API-шлюз), некоторые IoT/встраиваемые проекты.
- Инструменты и редакторы: Neovim — активное развитие экосистемы плагинов и конфигурации на Lua (это большой тренд последних лет).
- Производительность: LuaJIT — очень быстрый JIT-компилятор для Lua, поэтому Lua используют там, где важна скорость.
2) Почему Lua всё ещё используется
- Очень лёгкий и компактный язык для встраивания в приложения.
- Небольшая «стоимость» интеграции: С API на C легко встраивать и расширять.
- Хороший баланс простоты и выразительности — удобен для скриптов, конфигурации и быстрых прототипов.
- Сообщества вокруг конкретных продуктов (Roblox, WoW, Defold, Neovim и т.д.) активны и поддерживают язык.
3) Чем Lua отличается от тех языков, что ты перечислил
- Это язык-скрипт, ориентированный на внедрение внутрь хоста (движка/сервера). Не «полноценная» экосистема уровня C#/Unity или JS/всего веба, но в нишах очень сильна.
- Lua проще выучить синтаксически, но есть свои идиомы (таблицы вместо массивов/словaрей, метатаблицы и т.д.).
4) Стоит ли тратить время (конкретно для тебя)
- Если цель — работать с Defold/игровыми скриптами и просто практиковаться вне движка — да, оправдано. Lua учится быстро, и навыки переходят между проектами (Defold → LÖVE → WoW-addons → Neovim).
- Если цель — “вклад в карьеру” в широком смысле (веб, корпоративные бэкенды), то других языков (Python/JS/Java/C#) больше возможностей. Но ты сказал, что язык нужен не для работы — значит Lua хорошая и интересная цель.
5) Как и где учить (практические советы)
- Официальная документация и reference (lua.org) — компактно и полно. Книга “Programming in Lua” (автор Roberto Ierusalimschy) — рекомендована. Есть переводы и старые русские издания.
- Учись на примерах: маленькие скрипты, REPL, игрушки в LÖVE, простой проект в Defold. Практика — лучший путь.
- Попробуй писать маленькие плагины/скрипты: аддон для WoW, плагин для Neovim, Lua-скрипт для Redis/OpenResty (если интересен бэк).
- Инструменты: LuaRocks (пакеты), luacheck (статический анализ), ZeroBrane Studio или VS Code с плагинами, тесты с busted.
- Учти версии: в проектах часто используется Lua 5.1/LuaJIT, в новых — 5.3/5.4; Roblox использует Luau (диалект). Поглядывай документацию целевой платформы.
6) Про русскоязычные материалы
- Русскоязычных руководств меньше, чем по Python/JS, но есть переводы книги, отдельные туториалы, гайды по LÖVE и по написанию аддонов для WoW. Много материалов по Lua в целом — на английском.
- Если английский не вариант, можно ориентироваться на примеры из движка (Defold снабжает документацией и примерами), переводить страницы через авто‑переводчик и больше изучать по коду.
7) Итог и рекомендация
- Если тебе интересно экспериментировать с Defold — учить Lua имеет смысл: быстро принесёт практический результат и откроет другие интересные ниши (LÖVE, Neovim, аддоны и пр.).
- Lua — нишевый, но живой и активный в своих областях; “мёртвым” язык не является.
Если хочешь, могу:
- порекомендовать конкретную небольшую учебную программу/план (на 1–2 недели) с упражнениями под Defold/LÖVE;
- прислать ссылки на русские/англ. ресурсы и примеры проектов для старта.