ரஸ்ட் 1.55 நிரலாக்க மொழி வெளியீடு

கணினி நிரலாக்க மொழியான ரஸ்ட் 1.55 இன் வெளியீடு, மொஸில்லா திட்டத்தால் நிறுவப்பட்டது, ஆனால் இப்போது சுயாதீனமான இலாப நோக்கற்ற அமைப்பான ரஸ்ட் அறக்கட்டளையின் அனுசரணையில் உருவாக்கப்பட்டது, வெளியிடப்பட்டது. மொழி நினைவக பாதுகாப்பில் கவனம் செலுத்துகிறது, தானியங்கி நினைவக நிர்வாகத்தை வழங்குகிறது, மேலும் குப்பை சேகரிப்பான் அல்லது இயக்க நேரத்தைப் பயன்படுத்தாமல் உயர் பணி இணைநிலையை அடைவதற்கான வழிமுறைகளை வழங்குகிறது (இயக்க நேரம் நிலையான நூலகத்தின் அடிப்படை துவக்கம் மற்றும் பராமரிப்புக்கு குறைக்கப்படுகிறது).

ரஸ்டின் தானியங்கி நினைவக மேலாண்மை சுட்டிகளை கையாளும் போது ஏற்படும் பிழைகளை நீக்குகிறது மற்றும் குறைந்த அளவிலான நினைவக கையாளுதலில் இருந்து எழும் சிக்கல்களிலிருந்து பாதுகாக்கிறது, அதாவது நினைவகப் பகுதியை விடுவித்த பிறகு அணுகுவது, பூஜ்ய சுட்டிக்காட்டி குறைபாடுகள், இடையக மீறல்கள் போன்றவை. நூலகங்களை விநியோகிக்க, அசெம்பிளியை உறுதிப்படுத்த மற்றும் சார்புகளை நிர்வகிக்க, திட்டம் சரக்கு தொகுப்பு மேலாளரை உருவாக்குகிறது. நூலகங்களை வழங்குவதற்கு crates.io களஞ்சியம் துணைபுரிகிறது.

முக்கிய கண்டுபிடிப்புகள்:

  • கார்கோ பேக்கேஜ் மேனேஜருக்கு உருவாக்கத்தின் போது ஏற்படும் நகல் பிழைகள் மற்றும் எச்சரிக்கைகளை ஒன்றிணைக்கும் திறன் உள்ளது. "சரக்கு சோதனை" மற்றும் "கார்கோ செக் --ஆல்-டார்கெட்ஸ்" போன்ற கட்டளைகளை செயல்படுத்தும் போது, ​​பல்வேறு அளவுருக்கள் கொண்ட தொகுப்பின் பல உருவாக்கங்களை விளைவிக்கும், காட்டப்படுவதற்குப் பதிலாக, மீண்டும் மீண்டும் வரும் பிரச்சனையின் சுருக்கம் பயனருக்கு இப்போது காண்பிக்கப்படுகிறது. ஒரே விஷயத்தை மீண்டும் மீண்டும் உருவாக்கும்போது ஒரே மாதிரியான பல எச்சரிக்கைகள். $ சரக்கு +1.55.0 சோதனை —அனைத்து இலக்குகளையும் சரிபார்த்தல் foo v0.1.0 எச்சரிக்கை: செயல்பாடு ஒருபோதும் பயன்படுத்தப்படவில்லை: 'foo' —> src/lib.rs:9:4 | 9 | fn foo() {} | ^^^ | = குறிப்பு: '#[warn(dead_code)]' இயல்புநிலை எச்சரிக்கை: 'foo' (lib) 1 எச்சரிக்கை எச்சரிக்கையை உருவாக்கியது: 'foo' (lib test) 1 எச்சரிக்கையை உருவாக்கியது (1 நகல்) dev [unoptimized + debuginfo] இலக்கு (கள்)0.84 வினாடிகளில்
  • நிலையான நூலகத்தில் உள்ள மிதக்கும் புள்ளி பாகுபடுத்தும் குறியீடு வேகமான மற்றும் மிகவும் துல்லியமான Eisel-Lemire அல்காரிதத்தைப் பயன்படுத்த நகர்த்தப்பட்டுள்ளது, இது மிகப் பெரிய எண்ணிக்கையிலான இலக்கங்களைக் கொண்ட எண்களை வட்டமிடுதல் மற்றும் பாகுபடுத்துவதில் முன்னர் காணப்பட்ட சில சிக்கல்களைத் தீர்த்துள்ளது.
  • வார்ப்புருக்களில் மூடப்படாத வரம்புகளைக் குறிப்பிடும் திறன் நிலைப்படுத்தப்பட்டுள்ளது (“X..” என்பது X மதிப்பில் தொடங்கி முழு எண் வகையின் அதிகபட்ச மதிப்புடன் முடிவடையும் வரம்பாக விளக்கப்படுகிறது): x ஐ u32 ஆக பொருத்தவும் { 0 => println! (“பூஜ்ஜியம்!”), 1.. => println!("நேர்மறை எண்!"),}
  • விரிவாக்கப்பட்ட பிழை வகைகள் std ::io::ErrorKind (NotFound மற்றும் WouldBlock போன்ற வகைகளில் பிழைகளை வகைப்படுத்துகிறது). முன்னதாக, ஏற்கனவே உள்ள வகைகளுக்குப் பொருந்தாத பிழைகள் ErrorKind ::பிற வகைக்குள் அடங்கும், இது மூன்றாம் தரப்பு குறியீட்டில் உள்ள பிழைகளுக்கும் பயன்படுத்தப்பட்டது. தற்போது உள்ள வகைகளுக்குப் பொருந்தாத பிழைகளுக்கு தனி அக வகை ErrorKind::வகைப்படுத்தப்படாதது மற்றும் ErrorKind::மற்ற வகையானது நிலையான நூலகத்தில் நிகழாத பிழைகளுக்கு வரம்பிடப்பட்டுள்ளது (io::Error வழங்கும் நிலையான நூலக செயல்பாடுகள் இனி ErrorKind :: வகை மற்றவற்றைப் பயன்படுத்த வேண்டாம்).
  • API இன் ஒரு புதிய பகுதி நிலையான வகைக்கு நகர்த்தப்பட்டது, இதில் பண்புகளின் முறைகள் மற்றும் செயலாக்கங்கள் உறுதிப்படுத்தப்பட்டுள்ளன:
    • பிணைக்கப்பட்ட:: குளோன்
    • வடிகால்::as_str
    • IntoInnerError::into_error
    • IntoInnerError::into_parts
    • ஒருவேளைUninit::assume_init_mut
    • ஒருவேளைUninit::assume_init_ref
    • ஒருவேளை யூனினிட்::எழுதலாம்
    • வரிசை::வரைபடம்
    • ops::ControlFlow
    • x86::_bittest
    • x86::_bittestandcomplement
    • x86::_bittstandreset
    • x86::_bittstandset
    • x86_64::_bittest64
    • x86_64::_bittestandcomplement64
    • x86_64::_bittestandreset64
    • x86_64::_bittstandset64
  • "const" பண்புக்கூறு, மாறிலிகளுக்குப் பதிலாக எந்த சூழலிலும் பயன்படுத்துவதற்கான சாத்தியத்தை தீர்மானிக்கிறது, இது str::from_utf8_unchecked முறையில் பயன்படுத்தப்படுகிறது.
  • powerpc64le-unknown-freebsd இயங்குதளத்திற்கு மூன்றாம் நிலை ஆதரவு செயல்படுத்தப்பட்டுள்ளது. மூன்றாம் நிலை அடிப்படை ஆதரவை உள்ளடக்கியது, ஆனால் தானியங்கு சோதனை இல்லாமல், அதிகாரப்பூர்வ உருவாக்கங்களை வெளியிடுதல் அல்லது குறியீட்டை உருவாக்க முடியுமா என்பதைச் சரிபார்த்தல்.

ஆதாரம்: opennet.ru

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