நிரலாக்க மொழியின் வெளியீடு Haxe 4.1

கிடைக்கும் கருவித்தொகுப்பு வெளியீடு ஹேக்ஸ் 4.1, வலுவான தட்டச்சு, குறுக்கு-தொகுப்பு மற்றும் செயல்பாடுகளின் நிலையான நூலகத்துடன் அதே பெயரில் பல முன்னுதாரண உயர்-நிலை நிரலாக்க மொழி அடங்கும். திட்டமானது C++, HashLink/C, JavaScript, C#, Java, PHP, Python மற்றும் Lua ஆகியவற்றிற்கான மொழிபெயர்ப்பை ஆதரிக்கிறது, மேலும் ஒவ்வொரு இலக்கு தளத்தின் சொந்த திறன்களுக்கான அணுகலுடன் JVM, HashLink/JIT, Flash மற்றும் Neko பைட்கோட் ஆகியவற்றிற்கான தொகுப்பையும் ஆதரிக்கிறது. கம்பைலர் குறியீடு வழங்கியது GPLv2 உரிமத்தின் கீழ், மற்றும் Haxe க்காக உருவாக்கப்பட்ட நிலையான நூலகம் மற்றும் மெய்நிகர் இயந்திரங்கள் ஹாஷ்லிங்க் и பார்பி MIT உரிமத்தின் கீழ்.

மொழி என்பது வெளிப்பாடு சார்ந்த வலுவான தட்டச்சு மூலம். பொருள் சார்ந்த, பொதுவான மற்றும் செயல்பாட்டு நிரலாக்க நுட்பங்கள் ஆதரிக்கப்படுகின்றன. Haxe தொடரியல் ECMAScriptக்கு அருகில் உள்ளது விரிவடைகிறது நிலையான தட்டச்சு, தன்னியக்க அனுமானம், பேட்டர்ன் மேட்சிங், ஜெனரிக்ஸ், லூப்புகளுக்கான ஐடிரேட்டர் அடிப்படையிலான, AST மேக்ரோக்கள், GADT (பொதுவான இயற்கணித தரவு வகைகள்), சுருக்க வகைகள், அநாமதேய கட்டமைப்புகள், எளிமைப்படுத்தப்பட்ட வரிசை வரையறைகள், நிபந்தனை தொகுப்பு வெளிப்பாடுகள், மெட்டாடேட்டாவை இணைத்தல் போன்ற அதன் அம்சங்கள் , வகுப்புகள் மற்றும் வெளிப்பாடுகள், சரம் இடைச்செருகல் ("'என் பெயர் $பெயர்'"), வகை அளவுருக்கள் ('புதிய முதன்மை ("foo")') மற்றும் இன்னும் அதிகம்.

வகுப்பு தேர்வு {
நிலையான செயல்பாடு முக்கிய() {
இறுதி நபர்கள் = [
"எலிசபெத்" => "நிரலாக்கம்",
"ஜோயல்" => "வடிவமைப்பு"
];

(பெயர் => மக்களில் வேலை) {
ட்ரேஸ் ('$பெயர் வாழ்க்கைக்காக $ வேலை செய்கிறது!');
}
}
}

பதிப்பு 4.1 இல் புதிய அம்சங்கள்:

  • டெயில் ரிகர்ஷன் ஆப்டிமைசேஷன் சேர்க்கப்பட்டது.
  • விதிவிலக்கு கையாளுதலுக்காக ஒரு புதிய ஒருங்கிணைந்த API சேர்க்கப்பட்டது.
  • "முயற்சி {} கேட்ச்(இ) {}" என்ற கட்டமைப்பானது "முயற்சி {} கேட்ச்(இ: ஹேக்ஸ்.எக்ஸப்சன்) {}" என்பதன் சுருக்கெழுத்து ஆக அனுமதிக்கப்படுகிறது.
  • eval மொழிபெயர்ப்பாளருக்கு SSL ஆதரவு சேர்க்கப்பட்டது.
  • இலக்கு JVM இனி பரிசோதனையாகக் கருதப்படாது.
  • மொழி சேவையக நெறிமுறைக்கு, "Goto Implementation" மற்றும் "References" செயல்பாடுகளுக்கான ஆதரவு சேர்க்கப்பட்டுள்ளது.
  • உருவாக்கப்பட்ட குறியீட்டில் தற்காலிக உள்ளூர் மாறிகளின் மேம்படுத்தப்பட்ட பெயரிடல். தேவையற்ற "திரும்ப" அகற்றப்பட்டது; திரும்ப மதிப்பு இல்லாமல் அம்பு செயல்பாடுகளில்.
  • புலங்களில் அணுகல் சேர்க்கைகள் (பெறுதல், இயல்புநிலை) அனுமதிக்கப்படும் (பெறுபவர் மட்டும், இயல்புநிலை ஒதுக்கீட்டு நடத்தை).
  • புலங்களுக்கான அதிகரிப்பு மற்றும் குறைப்பு ஆபரேட்டர்களை அனுமதிக்கவும் சுருக்க வகைகள்.
  • அநாமதேய இட்டேட்டர்களைப் பயன்படுத்தி லூப்களுக்கான இன்லைனிங் மேம்படுத்தப்பட்டது.
  • js: ES5 க்கான மேம்படுத்தப்பட்ட StringMap செயல்படுத்தல்.
  • js: "-D js-es=6" என்ற கம்பைலர் விருப்பத்தில் லெட் மாறிகளின் உருவாக்கம் சேர்க்கப்பட்டது, ES6 வகுப்புகளின் உருவாக்கம் மேம்படுத்தப்பட்டுள்ளது.
  • lua: "StringIterator" உகந்ததாக, பிழை கையாளுதல் மேம்படுத்தப்பட்டது.
  • php: அடிப்படை வகைகளுக்கு உகந்த "Std.isOfType".
  • php: உருவாக்கப்பட்ட வரிசைகள் இப்போது "இடரேட்டர்", "இடரேட்டர் அக்ரிகேட்", "கௌண்டபிள்" ஆகிய நேட்டிவ் இன்டர்ஃபேஸ்களை செயல்படுத்துகின்றன.
  • cs: சேர்க்கப்பட்ட மெட்டாடேட்டா "@:assemblyMeta" மற்றும் "@:assemblyStrict".
  • python: "__contains__" ஐ அநாமதேய பொருள்களுக்குச் செயல்படுத்துதல்
    மற்றும் "__getitem__", இது உருவாக்கப்பட்ட குறியீட்டில் அகராதிகளாகப் பயன்படுத்த அனுமதிக்கிறது.

  • jvm: அநாமதேய கட்டமைப்புகளாகப் பயன்படுத்தப்படும் சந்தர்ப்பங்களில் தட்டச்சு செய்யப்பட்ட செயல்பாடுகளை அணுகுவதற்கும் கூடுதல் இடைமுகங்களை உருவாக்குவதற்கும் ஒரு புதிய வழியின் காரணமாக கணிசமாக மேம்படுத்தப்பட்ட செயல்திறன் நன்றி (டைனமிக் சொத்து தேடுதல் தடுக்கப்பட்டது):
    நிரலாக்க மொழியின் வெளியீடு Haxe 4.1

நிலையான நூலகத்தில் மேம்பாடுகள்:

  • "Array.contains" செயல்பாடு சேர்க்கப்பட்டது.
  • "Array.keyValueIterator" சேர்க்கப்பட்டது, இது வரிசைகளுக்கான விசை-மதிப்பு மறு செய்கையை செயல்படுத்துகிறது ("for (key => value in array)").
  • "haxe.Constraints.NotVoid" என்ற கட்டுப்பாடு வகை சேர்க்கப்பட்டது.
  • "FindIndex" மற்றும் "foldi" செயல்பாடுகள் "Lambda" வகுப்பில் சேர்க்கப்பட்டுள்ளன.
  • "அரே அணுகல்" ("arr[i]" வழியாக அணுகல்) மற்றும் "haxe.ds.HashMap" க்கான விசை மதிப்பு மறு செய்கை செயல்படுத்தப்பட்டது.
  • jvm: "StringMap", "sys.thread.Lock", "sys.thread.Thread" ஆகியவற்றின் JVM-குறிப்பிட்ட பதிப்புகள் செயல்படுத்தப்பட்டது.
  • java/jvm: "haxe.crypto" தொகுதிகளுக்கு "MD5", "SHA-1" மற்றும் "SHA-256" இன் சொந்த செயலாக்கங்கள் பயன்படுத்தப்பட்டன.
  • மேக்ரோ: "haxe.macro.Context.containsDisplayPosition(pos)" சேர்க்கப்பட்டது.
  • nullsafety: "கடுமையான" முறை இப்போது ஒற்றை திரிக்கப்பட்டதாக கருதப்படுகிறது; "StrictThreaded" பயன்முறையைச் சேர்த்தது.
  • "Std.isOfType"க்கு ஆதரவாக "Std.is" நிறுத்தப்பட்டது.
  • மூடல்களில் மதிப்புகள் இல்லாமல் உள்ளூர் மாறிகளைப் பயன்படுத்தும் போது ஒரு எச்சரிக்கை சேர்க்கப்பட்டது.
  • js: "typed __js__(code, args)" தடுக்கப்பட்டது, அதற்கு பதிலாக "js.Syntax.code(code, args)".
  • php/neko: "neko.Web" மற்றும் "php.Web" ஆகியவை நிறுத்தப்பட்டு, பின்னர் "hx4compat" நூலகத்திற்கு நகர்த்தப்படும்.

அடுத்த வெளியீட்டில் திட்டமிடப்பட்டுள்ளன:

  • தொகுப்பு மேலாளர் மேம்பாடுகள் haxelib.
  • ஒத்திசைவற்ற அமைப்பு API அடிப்படையிலானது லிபுவ்.
  • கரோட்டின்கள்.
  • வகுப்புகளை உருவாக்காமல் மட்டு நிலையான செயல்பாடுகள் மற்றும் மாறிகளை அறிவித்தல் (ஏற்கனவே இரவு கட்டங்களில் கிடைக்கிறது).

ஆதாரம்: opennet.ru

கருத்தைச் சேர்