லுவா என்பது எளிமைக்காகவும் செயல்திறனுக்காகவும் வடிவமைக்கப்பட்ட ஒரு நிரலாக்க மொழியாகும், இது கானொளிகாட்சிவிளையாட்டு,பல்லூடக நிறுவனங்களால் பயன்பாட்டின்முன்-பக்க உரைநிரல் மொழியாகப் பயன்படுத்தப்படுகிறது. இது ஒரு அற்புதமான சாளர மேலாளர், தொலைதூர கோப்பு மேலாளர், Howl உரை திருத்தி , அதன் தெளிவு சுத்தமான வடிவமைப் பிற்காக இன்னும் பல திறமூல செயல்திட்டங்களால் பயன்படுத்தப்படுகிறது. லுவா எனும் கணினிமொழியின் குறிமுறைவரிகளை மற்றவற்றுள் உட்பொதிக்கக்கூடியது, எனவே மற்றொருகணினி மொழியின் (ஜாவா, சி ,சி++ போன்றவை) குறிமுறைவரிகளின்அடிப்படைகளில் லுவாவின் குறிமுறை வரிகளை சேர்க்கலாம், மேலும் ஒரு மீப்பெரிய C API உடன் தொடர்பு கொள்ளலாம். கானொளிகாட்சிவிளையாட்டு,பல்லூடக ஆகிய துறைகளில் நுழைவதற்கு லுவாவைக் கற்றுக்கொள்ள விரும்பினாலும் அல்லது அதிக வரம்பு இல்லாத எளிதான உரைநிரல் மொழியில் அதிக ஆர்வமாக இருந்தாலும், இந்த லுவா எனும் கணினிமொழியானது எளிதாக அணுகக்கூடிய மிகவும் சக்திவாய்ந்த நிரலாக்க மொழியாகும்.
லுவாவை நிறுவுகைசெய்தல்
Linux இல், தொகுப்பு மேலாளரைப் பயன்படுத்தி இதனை(Lua) நிறுவுகைசெய்திடலாம். இதனுடைய விநியோகம் பின்னோக்கிய-இணக்கத்தின் ஆர்வத்தில் லுவாவின் பழைய பதிப்புகளை வழங்கலாம். பழைய பதிப்பை நிறுவுகைசெய்திட வேண்டாம் எனவிரும்பினால் சமீபத்திய பதிப்பை நிறுவுகைசெய்திடுக.
லுவா (“u” உடன்) எனும் நிரலாக்க மொழி ஆனது Roblox ஆல் உருவாக்கப்பட்ட லுவா 5.1 இன் பிரபலமான fork ஆகும். Roblox நிரலாக்கத்திற்கு Luau அல்லது Lua ஐப் பயன்படுத்தினால், Lua 5.1 ஐ நிறுவுகைசெய்திடுக.
Windows அல்லது mac இயக்கமுறைமையில் நிறுவுகைசெய்திட அதற்கான, LuaDist ஐப் பார்வையிடுக.
லுவாவை இயக்க தொடங்குதல்
ஒரு உரை திருத்தியில் Lua குறிமுறைவரிகளை எழுதவிரும்பினால். சொல் செயலி அல்லது அலுவலக பயன்பாட்டைப் பயன்படுத்த வேண்டாம். இதற்காக ஒரு எளிய பழைய உரை திருத்தி அல்லது IDE ஐப் பயன்படுத்திகொள்க, ஏனெனில் அவை குறிமுறைவரிகளை விளக்க வேண்டிய interpret நிரல்களைக் குழப்பக்கூடிய சிறப்பு வடிவமைப்பு எழுத்துகள் இல்லாமல் உரையை எளிய உரையாகச் சேமிக்கின்றன.
லுவா வின் குறிமுறைவரிகளின்பெரும்பாலான நிரல்களை பரவலாக பின்வருவன உள்ளிட்ட மூன்று பிரிவுகளாகஒழுங்கமைக்கலாம்:
சூழலை அமைத்தல்Set up the environment : இந்தப் பிரிவில், நிரல் கிடைக்க விரும்பும் உறுப்புகளை நாம் அடையாளம் காணலாம். சில நிரல்களில், கூறுகள் வெறும் எழுத்துக்கள் எண்கள் ஆகியன மட்டுமே கொண்டிருக்கின்றன, மேம்பட்ட குறிமுறைவரிகளில் அவை வரைகலையை, ஒலியை உள்ளடக்கியிருக்கலாம்.
பொறியை உருவாக்கிடுதல்Build the engine : இந்தப் பிரிவில், நாம் வழங்கிய உறுப்புகளை என்ன செய்ய வேண்டும் என்று லுவாவிடம் கூறுகின்றோம். அடிப்படை நிரல்களில், தரவு செயலாக்கப்பட்டு பதில் தயாரிக்கப்படுகிறது. மேம்பட்ட குறிமுறைவரிகளில், பயனர் பயன்பாட்டுடன் தொடர்பு கொள்ளும்போது இந்தப் பிரிவு ஒரு சுழற்சியில் இயங்கும்.
Go: இது நம்முடைய குறிமுறைவரிகளை நாம் தொடங்கச் சொல்லும் வரை எதுவும் செய்யாது.
zombie apocalypseஎனும் வாய்ப்பு ஒன்றினைக் கணக்கிடும் எளிய லுவா உரைிரலைள் எழுத விரும்புவதாக கொள்க (அல்லது குறைந்த பட்சம், ஒரு தன்னிச்சையான எண்ணை உருவாக்கினால் அது zombie apocalypse இன் வாய்ப்பு என கூறலாம்). கணினியிலிருந்து தன்னிச்சையான எண்ணைப் பெறுவது கடினம் லூவாவில்அதற்கான குறிமுறைவரிகள் பின்வருமாறு:
— setup
math.randomseed(os.time())
myNumber = math.random(0,100)
— engine
function calculate()
print(“There is a ” .. myNumber .. “% chance of a zombie apocalypse today.”)
end
— go
calculate()
அமைவுப் பிரிவில், math.randomseed உடன் சீரற்ற எண் உருவாக்குவதைத் தொடங்குகின்றோம். சீரற்ற தன்மையின் ஆதாரமாக, இயக்க முறைமையால் அறிவிக்கப்பட்ட நேரத்தைப் பயன்படுத்துகின்றோம். இவை லுவாவின் உள்ளமைக்கப்பட்ட செயலிகள். நிரலாக்க மொழியின் அனைத்து உள்ளமைக்கப்பட்ட செயலிகளையும் யாரும் அறியத் தொடங்குவதில்லை, எனவே இது போன்ற கட்டுரைகளில், இணையத் தேடல்பணி அடிப்படையிலான லுவா ஆவணங்களைப் படிப்பதன் மூலம் அவற்றைப் பற்றி அறிந்து கொள்க.
அடுத்து, ஒரு மாறியை உருவாக்குகின்றோம். இந்த பயன்பாட்டிற்காக உருவாக்கிய ஒன்று, லுவாவில் கட்டமைக்கப்பட்ட ஒன்று அன்று என்பதை நினைவூட்டுவதற்காக மாறிப் பெயர்களை “my” எனும் முன்னொட்டுடன் வைத்திடுக. ஒரு மாறி என்பது மாறக்கூடிய (அல்லது நிரலாக்க சொற்களில் “மாற்றக்கூடிய”) மதிப்பு ஆகும். கணினியின் தற்காலிக நினைவிடத்தில் தேவையான காலி இடத்தைக் கோருகின்றோம் தரவைச் சேமித்து வைத்திருக்கின்றோம், எனவே நாம் அதை பின்னர் பயன்படுத்தலாம். இந்த நிலையில், நாம் உருவாக்கும் மாறி 0 , 100ஆகியவற்றிற்கு இடையே உள்ள எண்ணைத் தேர்ந்தெடுக்க Lua இன் math.random எனும் செயலியைப் பயன்படுத்துகிறது. மீண்டும், இது ஒரு உள்ளமைக்கப்பட்ட செயலியாகும்.
engine பிரிவில், நம்முடைய சொந்த செயலியை உருவாக்குகின்றோம், அதை கணக்கிடுதல் எனக்கூறலாம். இந்த பயன்பாட்டின் சூழலில் அது அர்த்தமுள்ளதாக இருப்பதைத் தவிர, கணக்கிடுதல் என்ற சொல்லில் சிறப்பு எதுவும் இல்லை. செயலிகளை நடைமுறையில் எதையும் பெயரிடலாம். நாம் எதை அழைத்தாலும், இது உண்மையில் ஏதாவது செய்யும் நம்முடைய குறிமமுறைவரிகளின் பகுதியாகும். பெரும்பாலான கணினி நிரல்களில் பல செயலிகள் உள்ளன, ஆனால் இது ஒரு எளிய பயன்பாடு, எனவே இது ஒன்று மட்டுமே உள்ளது. கணக்கீட்டு செயலியானதுதிரையில் உரையைக் காண்பிக்க உள்ளமைக்கப்பட்ட லுவா அச்சிடு எனும் செயலியைப் பயன்படுத்திகொள்கிறது. நாம் யூகிக்கக்கூடியது போன்று, லுவாவில் உள்ள இரண்டு புள்ளிகள் (..) ஒரு கூற்றின் தொடர்ச்சியைக் குறிக்கின்றன, இது ஆங்கிலத்தில் ellipsis செய்வது போன்றது.
இறுதியாக, go எனும் பிரிவு கணக்கீட்டு செயலியை இயக்குகிறது. ஒரு செயலியை இயக்க மறந்துவிட்டால், நம்முடைய பயன்பாடு ஒருபோதும் இயங்காது. துவக்கிக்கான பொத்தானைத் திருப்பாமல் காரினை இயங்குவதாக உட்கார்ந்திருப்பது போன்றதாகும்.
labels பிரிவின் அமைப்பு, engine, go கட்டளைகள். லுவாவில் உள்ள கட்டளைகள் இரண்டு முன்புற கோடுகளால் (–) குறிக்கப்படுகின்றன, மேலும் அந்த வரியை புறக்கணிக்குமாறு லுவாவிடம் வெளிப்படையாகக் கூற இது ஒரு வழியாகும். வேறு சொற்களில் கூறுவதெனில், setup, engine, and go ஆகியவை Luaவின் முக்கிய சொற்கள் அல்ல, மேலும் அவை நம்முடைய குறிமுறைவரிகளில் தேவையில்லை. நம்முடைய குறிமுறைவரிகளைஎவ்வாறு கட்டமைப்பது என்பதை நினைவில் கொள்வதற்கு அவை ஒரு பயனுள்ள வழியாகும்.
இந்த பயன்பாட்டை சில முறை இயக்க முயற்சித்திடுக:
$ lua ./zombie.lua
There is a 78% chance of a zombie apocalypse today.
$ lua ./zombie.lua
There is a 10% chance of a zombie apocalypse today.
நிபந்தனைகள்
மிகக் குறைந்த அளவில், கணினிகள் இருமஎண்களின் நிலைமைகளுக்கு ஏற்ப இயங்குகின்றன. (1) அல்லது இல்லை (0) ஆகிய மின் சமிக்ஞைகள் உள்ளன. இது குறிமுறைவரிகளிலும் வெளிப்படுகிறது, மேலும் இிருமஎண்களின் நிலையை வெளிப்படுத்துவதற்கு நவீன நிரலாக்க மொழிகள் வழங்கும் உன்னதமான முறைகளில் ஒன்று if-then எனும் கூற்றாகும்.
ஒரு if-then கூற்றானது, கணினி இதுவரை சேகரித்த தரவை பகுப்பாய்வு செய்ய வைக்கிறது, அதை நாம் வரையறுக்கும் சில தன்னிச்சையான நிபந்தனைகளுடன் ஒப்பிட்டு, பின்னர் அது கண்டுபிடித்ததன் அடிப்படையில் சில நடவடிக்கைகளை எடுத்திடுக. நம்முடைய முதல் லுவா பயன்பாட்டை மிகவும் ஆற்றல்மிக்கதாக மாற்ற, நம்முடைய செயலியி if-then எனும் கூற்றினைச் சேர்க்கலாம்:
function calculate()
print(“There is a ” .. myNumber .. “% chance of a zombie apocalypse today.”)
if myNumber > 50 then
print(“Take an umbrella!”)
else
print(“It’s a good day for gardening!”)
end
end
இந்த if-then எனும் கூற்றானது பயன்பாட்டின் தற்போதைய இயக்கம் என்ன கூற்றினை செய்கிறது என்பதைத் தீர்மானிக்க ஒரு சிறிய அடிப்படைக் கணக்கீட்டினைப் பயன்படுத்துகிறது. ஒரு zombie apocalypse இற்கு 50% க்கும் அதிகமான வாய்ப்புகள் இருந்தால், பயனருக்கு சில பயனுள்ள ஆலோசனைகள் வழங்கப்படும். இல்லையெனில், வாய்ப்பு 50 அல்லது அதற்கும் குறைவாக இருக்க வேண்டும், எனவே வெவ்வேறு ஆலோசனைகள் வழங்கப்படுகின்றன. இது ஒரு எளிய நிபந்தனையாகும், இது கணினி உருவாக்கிய சீரற்ற எண்ணை பகுப்பாய்வு செய்து, அதன் முடிவின் அடிப்படையில் ஒன்று அல்லது மற்றொரு செயலை எடுக்க வேண்டும்.
முடிவுகளைக் காண குறிமுறைவரிகளை இயக்கிடுக:
$ lua ./zombie.lua
There is a 71% chance of a zombie apocalypse today.
Take an umbrella!
$ lua ./zombie.lua
There is a 65% chance of a zombie apocalypse today.
Take an umbrella!
$ lua ./zombie.lua
There is a 12% chance of a zombie apocalypse today.
It’s a good day for gardening!
லுவாவில் நாம் பயன்படுத்தக்கூடிய repeat-until, while, for, ஆகியனபோன்று பல பல வகையான நிபந்தனைக் கட்டுப்பாடுகள் உள்ளன.
லுவாவை கற்றல்
நிரலாக்கம் செய்வது எவ்வாறு என்று தெரிந்து யாரும் நிரலாக்கத்தை தொடங்குவதில்லை. குறிமுறைவரிகளை எவ்வாறு எழுதுவது என்பதைக் கற்றுக்கொள்வதில் ஆர்வமாக இருந்தால், லுவாவை தொடங்குவது ஒரு சிறந்த வழியாகும், ஏனெனில் இது ஒரு நிரலாளராக நம்முடைய புதிய வாழ்க்கையை எளிதாக்குவதற்கான வசதிகளைக் கொண்ட சிறிய கணினிமொழியாகும். நாம் பயன்படுத்தாத பல edge-case செயலிகளுடன் இது குழப்பமடையவில்லை. அதற்குப் பதிலாக, நாம் என்ன செய்ய விரும்புகின்றோமோ இது அதைச் செய்யும் நம்முடைய சொந்த தனித்துவமான செயலிகளை உருவாக்க தேவையான கட்டமைப்புத தொகுப்புகளை Lua வழங்குகிறது. லுவாவைப் பற்றி தெரிந்து கொள்ள வேண்டிய அனைத்தும் இதற்கான ஆவணங்களில் கிடைக்கின்றன, ஆனால் நாம் இந்த கணினி மொழியைத் தொடர்ந்து படிக்க விரும்பினால், இதற்கான மின்புத்தகத்தையும் பதிவிறக்கம் செய்து பயன்படுத்திகொள்ளலாம். புத்தகத்தின் முடிவில், லுவாவின் அனைத்து அடிப்படைகளையும் அறிந்துகொள்ளமுடியும்