![cover image](https://wikiwandv2-19431.kxcdn.com/_next/image?url=https://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Lua-Logo.svg/langfa-640px-Lua-Logo.svg.png&w=640&q=50)
لوآ (زبان برنامهنویسی)
یک زبان برنامهنویسی سبک / From Wikipedia, the free encyclopedia
لوآ (به انگلیسی: Lua، /ˈluːə/ LOO-ə) یک زبان برنامهسازی سبُکوزن، بازتابنده و امری-تابعی است. زبان لوآ با ساختار پردازهنویسی (برنامهنویسی اسکریپتی) و با هدف داشتن قابلیتهای گسترشپذیر طراحی شدهاست. واژه «لوآ» در زبان پرتغالی به معنی «ماه» است
![]() | |
پارادایم برنامهنویسی | چند الگویی:اسکریپتی، دستوری (رویهای، بر پایه پیشنمونه، شیءگرا)، تابعی |
---|---|
طراحی شده توسط | روبرتو یروسالیمچی ولادیمیر سِلس لوییز هنریک دی فیگوئردو |
ظهوریافته در | ۱۹۹۳؛ ۳۱ سال پیش (۱۹۹۳-خطا: زمان نامعتبر}}) |
انتشار پایدار | |
پویا، نیرومند، اردکی | |
زبان پیادهسازی | C (خانواده ANSI) |
سیستمعامل | چندسکویی |
پروانه | پروانه امآیتی |
.lua | |
وبگاه | |
پیادهسازیهای بزرگ | |
Lua, LuaJIT, LLVM-Lua, Lua Alchemy | |
گویش | |
Metalua, Idle, GSL Shell | |
متأثر از | |
C++، سیالیو، Modula, اسکیم، اسنوبال | |
تأثیر گذاشته بر | |
آیاو، GameMonkey ،Squirrel، فالکن، MiniD |
فلسفه اولیه ساخت این زبان، استفاده از آن به عنوان یک زبان عمومی و ساده پردازهنویسی بود. جامعه هدف لوآ شامل کاربران نیمه حرفهای هم میشود. در پردازهنویسی برای انجام توصیفات پیچیده از یک زبان نهفته شده در یک زبان دیگر استفاده میشود. به خاطر سبک بودن کتابخانه لوآ، میتوان لوآ را با تمام قابلیتها به عنوان یک زبان نهفته در سی استفاده نمود. حجم مفسر کامپایل شده حدود ۱۵۰KB است.
در طراحی لوآ سعی شدهاست از فرا ساز و کارها بیشتر استفاده شود تا در عین کوچکی، انعطافپذیری زبان افزایش یابد. دادهساختار جدول، داده ساختار اصلی مورد استفاده در این زبان است.
لوآ یک مفسر اصلی دارد که توسط طراحان اصلی زبان پیادهسازی شدهاست. این مفسر دارای واسط سی نسبتاً سبک و سادهای است.
هر دوی لوآ و جاوااسکریپت از اشیاء نمونهپایه استفاده میکنند. آنها هر دو از شِما الگو گرفتهاند. بسیاری از مفاهیم مشترک میان آنها وجود دارد، گرچه تفاوتهای اساسی در نحو دارند. در طراحی لوآ شبیه به آیکون است، شاید به این علت که هر دو از اسنوبال تأثیر پذیرفتهاند.
زبان لوآ در طول زمان تغییر میکند، قابلیتهایی از آن کاسته و قابلیتهایی بر آن افزوده میشوند. اکنون این زبان در نسخه ۵٫۴٫۴ قرار دارد (۱۴۰۱)
لوآ در صنعت بازیهای ویدئویی محبوبیت زیادی دارد. به جز بازیها لوآ در کاربردهای بسیاری هم تجاری و هم غیرتجاری استفاده شدهاست.