راهنما:لوآ
لوآ (به انگلیسی: Lua، /ˈluːə/ LOO-ə) یک زبان برنامهسازی سبُکوزن، بازتابنده و امری-تابعی است. زبان لوآ با ساختار پردازهنویسی (برنامهنویسی اسکریپتی) و با هدف داشتن قابلیتهای گسترشپذیر طراحی شدهاست. واژه «لوآ» در زبان پرتغالی به معنی «ماه» است.[۱]
فلسفه اولیه ساخت این زبان، استفاده از آن به عنوان یک زبان عمومی و ساده پردازهنویسی بود. جامعه هدف لوآ شامل کاربران نیمه حرفهای هم میشود. در پردازهنویسی برای انجام توصیفات پیچیده از یک زبان نهفته شده در یک زبان دیگر استفاده میشود. به خاطر سبک بودن کتابخانه لوآ، میتوان لوآ را با تمام قابلیتها به عنوان یک زبان نهفته در سی استفاده نمود. حجم مفسر کامپایل شده حدود ۱۵۰KB است.
در طراحی لوآ سعی شدهاست از فرا ساز و کارها بیشتر استفاده شود تا در عین کوچکی، انعطافپذیری زبان افزایش یابد. دادهساختار جدول، داده ساختار اصلی مورد استفاده در این زبان است.
لوآ یک مفسر اصلی دارد که توسط طراحان اصلی زبان پیادهسازی شدهاست. این مفسر دارای واسط سی نسبتاً سبک و سادهای است. [۱]
هر دوی لوآ و جاوااسکریپت از اشیاء نمونهپایه استفاده میکنند. آنها هر دو از شِما الگو گرفتهاند. بسیاری از مفاهیم مشترک میان آنها وجود دارد، گرچه تفاوتهای اساسی در نحو دارند. در طراحی لوآ شبیه به آیکون است، شاید به این علت که هر دو از اسنوبال تأثیر پذیرفتهاند.
زبان لوآ در طول زمان تغییر میکند، قابلیتهایی از آن کاسته و قابلیتهایی بر آن افزوده میشوند. اکنون این زبان در نسخه ۵٫۴٫۰ قرار دارد (تیر ۱۳۹۹)
لوآ در صنعت بازیهای ویدئویی محبوبیت زیادی دارد. به جز بازیها لوآ در کاربردهای بسیاری هم تجاری و هم غیرتجاری استفاده شدهاست.