Nim 1.2.0 නිකුතුව

Nim පද්ධති ක්‍රමලේඛන භාෂාවේ නව අනුවාදයක් නිකුත් කර ඇත. එය 1.0 අනුවාදය සමඟ අර්ධ නොගැලපීමක් ඇත, උදාහරණයක් ලෙස දැඩි ආකාරයේ පරිවර්තනය හේතුවෙන්. නමුත් මෙම අවස්ථාවේදී flag -useVersion:1.0 එකක් ඇත.

ප්‍රධාන නවෝත්පාදනය වන්නේ -gc:arc විකල්පය මඟින් සක්‍රීය කරන ලද නව කසළ එකතු කරන්නකුයි. භාෂාවේ කතුවරයා වන Andreas Rumpf, ARC හි වාසි පිළිබඳ සවිස්තරාත්මක ලිපියක් ලිවීමට යන්නේ, නමුත් දැනට ඔහු ඔබට කියවීමට ආරාධනා කරයි FOSDEM හි ඔහුගේ කාර්ය සාධනය සමඟ, මිණුම් දණ්ඩ ප්‍රතිඵල පෙන්වයි.

  • සම්පාදකය දැන් නිෂ්පාදනය කරන ලද එකලස් කිරීමේ කේතය වඩාත් පහසු පරීක්ෂා කිරීම සඳහා --asm විකල්පයට සහය දක්වයි.
  • align pragma වස්තු විචල්‍ය සහ ක්ෂේත්‍ර මත භාවිතා කළ හැක, මෙය C/C++ හි ඇති alignas වලට සමාන වේ.
  • The =sink operator දැන් විකල්පමය. compiler හට දැන් වස්තු කාර්යක්ෂමව එහා මෙහා ගෙන යාමට =destroy සහ copyMem සංයෝගයක් භාවිතා කළ හැක.
  • අත්සන් නොකළ පූර්ණ සංඛ්‍යා වෙත පරිවර්තන ධාවන වේලාවේදී පරීක්ෂා නොකෙරේ. තුළ විස්තර https://github.com/nim-lang/RFCs/issues/175
  • lvalue සඳහා නව සින්ටැක්ස්: var b {.byaddr.} = expr, ආනයන std/decls හරහා සම්බන්ධ කර ඇත
  • සම්පාදකය නව ස්විචයක් සඳහා සහය දක්වයි -panics:on, එය IndexError හෝ OverflowError වැනි ධාවන කාල දෝෂ මාරක දෝෂ බවට පත් කරන අතර එය උත්සාහයක් හරහා අල්ලා ගත නොහැක. මෙය ධාවන කාල කාර්යක්ෂමතාව සහ වැඩසටහන් ප්රමාණය වැඩි දියුණු කළ හැක.
  • ජනනය කරන ලද JS කේතය අවකාශ සහ පටිතිවල මිෂ්මාෂ් වෙනුවට හිස්තැන් පමණක් භාවිතා කරයි.
  • වත්මන් Nim මොඩියුලයෙන් උත්පාදනය කරන ලද C(++) ගොනුවක් සඳහා විශේෂ C(++) පසුපෙළ විකල්ප හැසිරවීමට භාවිතා කළ හැකි .localPassc ප්‍රග්මා සඳහා සම්පාදකය සහාය එකතු කර ඇත.
  • නිම්ප්‍රේටි තවදුරටත් ඉන්ඩෙන්ටේෂන් සැකසීම සඳහා සෘණාත්මක තර්කයක් පිළිගන්නේ නැත, මන්ද මෙය ලිපිගොනු බිඳ දැමීමකි.
  • නව මැක්‍රෝ එකතු කර ඇත (එකතු කිරීම, ඩප් කිරීම, අල්ලා ගැනීම), සීනි ආනයනය හරහා සම්බන්ධ කර ඇත.

මීට අමතරව, සම්මත පුස්තකාලයට බොහෝ වෙනස්කම් එකතු කර ඇති අතර බොහෝ දෝෂ නිවැරදි කිරීම් සිදු කර ඇත.

මූලාශ්රය: linux.org.ru

අදහස් එක් කරන්න