Lua 5.3 — версия лёгкого встраиваемого скриптового языка программирования, разработанного с акцентом на простоту, расширяемость и эффективную интеграцию с приложениями на C. Эта версия ввела несколько важных изменений по сравнению с предыдущими релизами, включая добавление целочиского типа, улучшенную поддержку побитовых операций и расширенные возможности для работы с числами, сохранив при этом идиоматичную и компактную синтаксическую модель Lua. Язык традиционно используется в качестве языка конфигурации, сценариев расширения и быстрой прототипизации компонентов программного обеспечения.
Архитектура Lua 5.3 сочетает минимальное ядро с мощной механизмом метатаблиц и API для встраивания, что позволяет прикладным программам определять собственные типы и поведение операций. Среда выполнения ориентирована на эффективную работу на ограниченных ресурсах: компактен по объёму кода и предлагает простой байт-кодный интерпретатор и минимальные требования к библиотекам. В состав стандартной библиотеки входят модули для работы со строками, таблицами, корутин, ввода-вывода и базовых математических операций; дополнительно разработчики часто подключают отдельные модули для расширенной функциональности.
- Типы данных: динамическая типизация с поддержкой чисел двойной точности и отдельного целочисленного подтипа, строк, булевых значений, таблиц, функций, потоков (корутин) и userdata.
 - Побитовые операции: встроенные операторы и библиотека для выполнения побитовых сдвигов, логических побитовых операций и побитовых масок, пригодные для низкоуровневой обработки данных.
 - UTF‑8 и строковые операции: базовые средства работы со строками в кодировке UTF‑8, включая функции для определения длины в кодовых точках и извлечения подстрок; при этом детальная поддержка Юникода оставлена внешним библиотекам при необходимости.
 - Стандартная библиотека: компактный набор модулей для работы со строками, таблицами, математикой, вводом‑выводом, операционной системой и отладкой, с возможностью расширения через C API.
 - API встраивания: хорошо документированный C API для вызова Lua из хост-приложения и наоборот, с механизмами управления стеком и автоматического преобразования типов между C и Lua.
 - Метатаблицы и метаметоды: гибкий механизм переопределения поведения таблиц и объектов, позволяющий реализовать операторы, индексацию, вызов как функции и другие пользовательские семантики.
 - Коррутины: легковесные потоки управления для кооперативной многозадачности, часто используемые для реализации сопрограмм, итераторов и асинхронных сценариев.
 - Производительность и размер: ориентирован на низкую память и быстрый запуск; интерпретатор и стандартная библиотека компактны, что делает Lua подходящим для встроенных систем и игровых движков.
 - Совместимость и миграция: в 5.3 сохранена преемственность с предыдущими версиями, однако добавление целочисленного типа и изменения в арифметике требуют внимательной проверки существующих скриптов при миграции.
 - Применение: конфигурация приложений, расширение функциональности программ через плагины, внутренняя логика игровых движков, быстрая прототипизация и автоматизация задач.