लुआ (प्रोग्रामन भाषा)

प्रोग्रामिंग भाषा

'लुआ' (Lua; पुर्तगाली भाषा में इसका अर्थ 'चन्द्रमा' है) छोटे आकार की प्रोग्रामन भाषा है जो मुख्यतः स्क्रिप्टिंग भाषा के रूप में प्रयोग के लिये डिजाइन की गयी है। फेम्म (FEMM) नामक 'फाइनाइट एलिमेन्ट' आधारित मुक्तस्रोत विश्लेषण प्रोग्राम को बैच मोड में चलाने के लिये लुआ ही प्रयुक्त होती है। लुआ, सन् २०१३ से विकिमिडिया के सभी साइट पर स्क्रिप्टिंग भाषा के रूप में प्रयुक्त हो रही है।

लुआ भाषा का सृजन 1993 में ब्राजील के रॉबर्तो लेरुसालिम्स्की (Roberto Ierusalimschy), फिगरेदो तथा वाल्दीमर सीलीस (Waldemar Celes) ने की थी।

लुआ कोड के कुछ उदाहरण

संपादित करें

लुआ में सर्वप्रसिद्ध 'हेलो वर्ल्ड प्रोग्राम' इस प्रकार लिखा जा सकता है:[1]

print 'हेलो वर्ल्ड, नमस्ते!'

टिप्पणी (कमेण्ट) के लिए सिंटैक्स यह है:

-- लुआ में कोई भी कमेण्ट लाइन डबल-हाइफन से आरम्भ होती है। (एक लाइन वाले कमेंट)
--[[ अनेक लाइन वाले कमेंटों को 
   डबल स्क्वायर ब्रैकेट से घेर दिया जाता है। ]]
--[=[ इस तरह के कमेंट में दूसरे --[[कमेण्ट]] गुंथित (nested) हो किए जा सकते हैं ]=]

नीचे के उदाहरण में फैक्टोरियल निकालने के लिए फलन का कोड लिखा गया है:

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

लुआ में चार तरह के लूप हैं।: while loop, repeat loop, for loop, तथा सामान्य for लूप। (यहाँ जो लोकल चर पारिभाषित किए गए हैं वे केवल प्रोग्राम को 'पूरा' करने के लिए हैं।)

The while loop has the syntax:

local condition = true
while condition do
  --Statements
end

The repeat loop:

local condition = false
repeat
  --Statements
until condition

executes the loop body at least once, and would keep looping until cond becomes true.

The for loop:

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

would repeat the loop body 5 times, outputting the numbers 1 through 5 inclusive.

Another form of the for loop is:

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

The generic for loop:

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

would iterate over the table _G using the standard iterator function pairs, until it returns nil.

  1. Ierusalimschy, Roberto (2003). Programming in Lua, 1st ed. PUC-Rio, Brazil: lua.org. पृ॰ 3. आई॰ऍस॰बी॰ऍन॰ 9788590379829.

बाहरी कड़ियाँ

संपादित करें