لوا (انگریزی: Lua؛ پرتگالی زبان میں اس کا مطلب چاند ہے)[1] چھوٹے سائز کی ایک ہلکی پھلکی ملٹی پیراڈائم پروگرامنگ زبان ہے جو بنیادی طور پراسکرپٹنگ زبان کے طور پر استعمال کے لیے بنائی گئی ہے۔ فیم (FEMM) نامی “فائنائٹ ایلیمنیٹ“ پر مبنی آزاد مصدر تجزیہ پروگرام کو بیچ موڈ میں چلانے کے لیے لوا ہی کا استعمال کیا جاتا ہے۔ لوا کراس پلیٹ فارم زبان بھی ہے۔[2]

لوا
پیراڈائمپروگرامنگ پیراڈائم: scripting, imperative (procedural, prototype-based اوبجیکٹ اوریئنٹڈ پروگرامنگ), functional
اشاعت1993؛ 31 برس قبل (1993)
ڈیزائنرRoberto Ierusalimschy
Waldemar Celes
Luiz Henrique de Figueiredo
مستحکم اشاعت5.3.1 (17 جون 2015ء (2015ء-06-17))
پیش منظر5.3.0 (12 جنوری 2015ء (2015ء-01-12))
شعبہ تحریرdynamic , strong, duck
اہم اطلاقاتLua, LuaJIT, LLVM-Lua, Lua Alchemy
بولیاںMetalua, Idle, GSL Shell
متاثرسی++, CLU, Modula, Scheme, SNOBOL
موثرIo, GameMonkey, Squirrel, Falcon, MiniD, Julia
اطلاقی زبانANSI C
آپریٹنگ سسٹمکراس پلیٹ فارم
اجازت نامہMIT License
فائل کی توسیع.lua
ویب سائٹwww.lua.org

تاریخ ترمیم

لوا زبان کی تخلیق 1993ء میں برازیل کے روبرتو لیروسالمسكی (Roberto Ierusalimschy)، فیگیوریدو (Figueiredo) اور والديمر سيليس (Waldemar Celes) نے کی تھی۔

مثالیں ترمیم

لوا زبان میں معروف ہیلو ورلڈ پروگرام اس طرح لکھا جا سکتا ہے:[3]

print 'Hello World!'

پروگرام کے دوران تبصرے درج کرنے کے لیے یہ سنٹیکس استعمال ہوتا ہے:

-- لوا میں تبصرہ کی تمام سطریں دوہرے ہائفن سے شروع ہوتی ہیں۔ (یک سطری تبصرہ)
--[[دوہری سطروں والے تبصروں کے ارد گرد دوہرے قلابین استعمال کیے جاتے ہیں۔]]
--[=[ اس طرح کے تبصرہ میں دوسرے --[[تبصرہ]] کو شامل (nested) کیا جاسکتا ہے۔ ]=]

ذیل میں فیکٹوریل (factorial) نکالنے کے لیے فنکشن کی مثال دی گئی ہے:

function factorial(n)
	local x = 1
	for i = 2,n do
		x = x * i
	end
	return x
end

لوپ ترمیم

لوا زبان میں چار قسم کے لوپس ہیں:

  • while loop
  • repeat loop
  • for loop
  • اور عام لوپ

وہائل لوپ (while loop) کا سنٹیکس اس طرح ہے:

local condition = true
while condition do
 --Statements
end

اور repeat loop:

local condition = false
repeat
 --Statements
until condition

لوپ باڈی کو کم از کم ایک بار چلاتا ہے اور لوپ جاری رہتا ہے تاآنکہ cond true ہو جائے۔

اور for loop:

for index = 1,5 do
 print(index)
end

لوپ باڈی کو پانچ مرتبہ دوہراتا ہے۔

for loop کی دوسری شکل:

local start,finish,delta = 10,1,-1 --delta may be negative, allowing the for loop to count down or up.
for index = start,finish,delta do
 print(index)
end

جنرک for loop:

for key,value in pairs(_G) do
 print(key,value)
end

حوالہ جات ترمیم

  1. "About Lua"۔ Lua.org۔ 26 دسمبر 2018 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 19 جون 2013 
  2. "About Lua"۔ Lua.org۔ 06 جنوری 2019 میں اصل سے آرکائیو شدہ۔ اخذ شدہ بتاریخ 11 اگست 2011 
  3. Roberto Ierusalimschy (2003)۔ Programming in Lua, 1st ed.۔ PUC-Rio, Brazil: lua.org۔ صفحہ: 3۔ ISBN 9788590379829