ஐந்து வருட வளர்ச்சிக்குப் பிறகு, சில நாட்களுக்கு முன்பு லுவா 5.4 இன் புதிய பதிப்பின் வெளியீடு வழங்கப்பட்டது, இது ஒரு சிறிய மற்றும் வேகமான ஸ்கிரிப்டிங் நிரலாக்க மொழியாகும், இது உட்பொதிக்கப்பட்ட மொழியாக பரவலாகப் பயன்படுத்தப்படுகிறது.
லுவா எளிமையான நடைமுறை தொடரியல் சக்திவாய்ந்த திறன்களுடன் ஒருங்கிணைக்கிறது துணை வரிசைகள் மற்றும் விரிவாக்கக்கூடிய மொழி சொற்பொருள்களைப் பயன்படுத்துவதன் மூலம் தரவு விளக்கத்தின். லுவா மாறும் எழுத்தைப் பயன்படுத்துகிறார்; மொழி கட்டமைப்புகள் ஒரு தானியங்கி குப்பை சேகரிப்பாளருடன் ஒரு பதிவு மெய்நிகர் இயந்திரத்தின் மேல் இயங்கும் பைட்கோடாக மாற்றப்படுகின்றன.
லுவா 5.4 இல் புதியது என்ன?
மொழியின் இந்த புதிய பதிப்பில், அது தனித்து நிற்கிறது என்பதைக் காணலாம் குப்பை சேகரிப்பாளரின் புதிய முறை, இது முன்னர் கிடைத்த அதிகரித்த குப்பை சேகரிப்பு பயன்முறையை நிறைவு செய்கிறது.
புதிய வழி குறுகிய சுவடு அடிக்கடி தொடங்கப்படுவதைக் குறிக்கிறது, இது சமீபத்தில் உருவாக்கிய பொருட்களை மட்டுமே உள்ளடக்கியது. ஒரு குறுகிய வலைவலத்திற்குப் பிறகு, விரும்பிய நினைவக நுகர்வு குறிகாட்டிகளை அடைய முடியாவிட்டால் மட்டுமே அனைத்து பொருட்களின் முழு வலம் செய்யப்படுகிறது. இந்த அணுகுமுறை அதிக செயல்திறன் மற்றும் குறைந்த நினைவக நுகர்வுக்கு உதவுகிறது குறுகிய காலத்திற்கு வாழும் ஏராளமான பொருட்களை சேமிக்கும் சூழ்நிலையில்.
லுவா 5.4 இலிருந்து வெளிப்படும் மற்றொரு மாற்றம் "const" பண்புடன் வரையறுக்கப்பட்ட மாறிலிகளை வரையறுக்கும் திறன். இத்தகைய மாறிகள் ஒரு முறை மட்டுமே ஒதுக்கப்பட முடியும், துவக்கத்திற்குப் பிறகு அவற்றை இனி மாற்ற முடியாது.
அதுவும் மாறிகளுக்கான புதிய ஆதரவும் சிறப்பிக்கப்படுகிறது Closed மூடப்பட வேண்டும் », அவை« மூடிய »பண்புக்கூறு மற்றும் நிலையான உள்ளூர் மாறிகள் போல (கான்ஸ்ட் பண்புக்கூறுடன்), அவை வேறுபடுகின்றன, அவை தெரிவுநிலைப் பகுதியின் எந்த வெளியீட்டிலும் மதிப்பு மூடப்பட்டிருக்கும் ("__ க்ளோஸ்" முறை என அழைக்கப்படுகிறது).
வகை "பயனர் தரவு", இது எந்த சி தரவையும் லுவா மாறிகளில் சேமிக்கும் திறனை வழங்குகிறது (நினைவகத்தில் தரவின் தொகுப்பைக் குறிக்கிறது அல்லது சி சுட்டிக்காட்டி உள்ளது), இப்போது பல மதிப்புகளைக் கொண்டிருக்கலாம் (பல மெட்டாடேபிள்களைக் கொண்டுள்ளன).
மறுபுறம், »for« சுழல்களில் முழு எண்களைக் கணக்கிடுவதற்கு லுவா 5.4 இல் ஒரு புதிய சொற்பொருள் பரிந்துரைக்கப்படுகிறது. சுழற்சியின் தொடக்கத்திற்கு முன்பு மறு செய்கைகளின் எண்ணிக்கை கணக்கிடப்படுகிறது, இது மாறி மற்றும் சுழற்சியை நிரப்புவதைத் தவிர்க்கிறது. ஆரம்ப மதிப்பு வரம்பு மதிப்பை விட அதிகமாக இருந்தால், பிழை உருவாக்கப்படுகிறது.
ஒரு எச்சரிக்கை அமைப்பு சேர்க்கப்பட்டுள்ளது, இது எச்சரிக்கை வெளிப்பாட்டைப் பயன்படுத்தி தீர்மானிக்கப்படுகிறது, மேலும் பிழைகள் போலல்லாமல், அடுத்தடுத்த நிரல் செயல்பாட்டை பாதிக்காது.
தனித்துவமான பிற மாற்றங்களில்:
- செயல்பாட்டு வாதங்கள் மற்றும் வருவாய் மதிப்புகள் பற்றிய தகவல்களை பிழைத்திருத்தம் "திரும்ப" ஆபரேட்டரில் சேர்க்கப்பட்டுள்ளது.
- சரங்களை எண்களாக மாற்றுவதற்கான செயல்பாடுகள் "சரங்கள்" நூலகத்திற்கு நகர்த்தப்பட்டுள்ளன.
- மெமரி பிளாக் அளவு குறைக்கப்பட்டால் நினைவக ஒதுக்கீடு செயல்பாட்டு அழைப்பு இப்போது தோல்வியடையக்கூடும்.
- 'String.format' செயல்பாட்டிற்கு புதிய '% p' வடிவமைப்பு விவரக்குறிப்பிற்கான ஆதரவு சேர்க்கப்பட்டது
- Utf8 நூலகம் 2 ^ 31 வரை எண்களைக் கொண்ட எழுத்து குறியீடுகளுக்கு ஆதரவை வழங்குகிறது.
- ஒரு புதிய விருப்பமான 'init' வாதம் 'string.gmatch' செயல்பாட்டில் சேர்க்கப்பட்டுள்ளது, இது தேடலை எந்த நிலையில் இருந்து தொடங்க வேண்டும் என்பதை தீர்மானிக்கிறது (இயல்பாக, 1 எழுத்துடன் தொடங்குகிறது).
- புதிய செயல்பாடுகளைச் சேர்த்தது 'lua_resetthread' (நூலை மீட்டமைக்கவும், முழு அழைப்பு அடுக்கையும் அழிக்கவும் மற்றும் அனைத்து மாறிகளையும் "மூடுவதற்கு" மூடவும்) மற்றும் 'coroutine.close'
லினக்ஸில் லுவாவை எவ்வாறு நிறுவுவது?
மொழியின் பெரும் புகழ் காரணமாக அதன் மொழிபெயர்ப்பாளர் பெரும்பாலான லினக்ஸ் விநியோகங்களில் காணப்படுகிறார்.
பாரா டெபியன், உபுண்டு, லினக்ஸ் புதினா அல்லது இவற்றிலிருந்து பெறப்பட்ட எந்தவொரு அமைப்பையும் பயன்படுத்துபவர்கள், நாம் ஒரு முனையத்தைத் திறந்து அதில் பின்வரும் கட்டளையை இயக்க வேண்டும்:
sudo apt install lua5.4
அவர்கள் இருந்தால் ஆர்ச் லினக்ஸ், மஞ்சாரோ, அன்டெர்கோஸ் அல்லது ஆர்ச் லினக்ஸிலிருந்து பெறப்பட்ட எந்தவொரு விநியோகத்தையும் பயன்படுத்துபவர்கள், நாம் AUR களஞ்சியங்களிலிருந்து மொழிபெயர்ப்பாளரை நிறுவ முடியும், இதற்காக நாம் மட்டுமே தட்டச்சு செய்ய வேண்டும்:
yay -S lua
போது CentOS, RHEL, Fedora அல்லது இவற்றிலிருந்து பெறப்பட்ட எந்தவொரு விநியோகத்தையும் பயன்படுத்துபவர்கள், இதை நாங்கள் நிறுவலாம்:
sudo dnf install lua
அதனுடன் தயாராக, நான் ஏற்கனவே நிறுவப்பட்டிருக்கிறேன்.