Nim 1.4.0 ක්‍රමලේඛන භාෂාව නිකුත් කිරීම

පද්ධති ක්‍රමලේඛන භාෂාව වන Nim හි නව අනුවාදයක් නිකුත් කර ඇති අතර, එය නිකුත් වී වසරක් සනිටුහන් කරයි පළමු ස්ථාවර අනුවාදය. භාෂාව පයිතන් වලට වාක්‍ය ඛණ්ඩයෙන් සමාන වන අතර කාර්ය සාධනයේ දී පාහේ C++ ට සමාන වේ. අනුව නිති අසන පැණ භාෂාව විශාල වශයෙන් ණයට ගනී (දායකත්වයේ අනුපිළිවෙලට): Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon.


C/C++/Objective-C/JS හි සම්පාදනය කිරීමේ හැකියාවට ස්තූතිවන්ත වන පරිදි සෑම තැනකම ක්‍රියා කරයි. එය සහාය දක්වයි මැක්රෝස්, OOP, ජනක, ව්යතිරේක, උණුසුම් කේත හුවමාරුව සහ තවත් බොහෝ දේ. බලපත්රය: MIT.

වඩාත්ම වැදගත් වෙනස්කම්:

  • ARC වෙතින් ඇල්ගොරිතම භාවිතා කරන නව ORC කසළ එකතු කරන්නෙකු ඇත, නමුත් ඒ සමඟම විශේෂ ආකාරයකින් චක්‍රලේඛ යොමු හසුරුවයි. -gc:orc විකල්පය මඟින් සබල කර ඇත. ARC/ORC වෙනස්කම් ගැන නියම ලිපියක් තියෙනවා.

  • දැඩි ක්‍රියාකාරී නිර්වචන සඳහා මාදිලියක් එක් කර ඇත, එමඟින් වස්තු විකෘතිතාව සඳහා අමතර පරීක්ෂාවක් සක්‍රීය කරයි. ප්‍රයෝගය {.පරීක්ෂණාත්මක: "strictFuncs".} හරහා හෝ --experimental:strictFuncs යතුර හරහා සක්‍රිය කර ඇත.

  • දැන් සිට මූල පදය ක්‍රියාකරුවෙකු ලෙස භාවිතා කළ හැක.

  • .noalias ප්‍රග්මා එකතු කරන ලදී. මූල පදයට සැපයිය හැකි කාර්යක්ෂමතාව වැඩි කිරීම සඳහා එය C සීමා මූල පදයට සිතියම් ගත කරයි.

  • විශේෂිත අනතුරු ඇඟවීම් දැන් --warningAsError[X]:on|off හරහා දෝෂ බවට පත් කළ හැක.

  • නව විධානය: nim r main.nim [args...], එය සම්පාදනය කර main.nim ධාවනය කරයි, සහ --usenimcache ඇතුළත් වන අතර එමඟින් ප්‍රති result ලය $nimcache/main$exeExt හි ගබඩා කර ඇත, nim c - ලෙස එකම තර්කනය භාවිතා කරයි. මූලාශ්‍ර වෙනස් වී නොමැති විට නැවත සම්පාදනය කිරීමෙන් මිදීමට r. උදාහරණයක්:

nim r compiler/nim.nim --help # පළමු වරට සම්පාදනය කරන ලදී
echo 'ආනයන os; echo getCurrentCompilerExe()' | nim r - # මේකත් වැඩ
nim r compiler/nim.nim --fullhelp # නැවත සම්පාදනය නොකර
nim r —nimcache:/tmp ප්‍රධාන # ද්විමය /tmp/main හි සුරකින ලදි

  • නව ඉඟියක් එක් කරන ලදී -hint:msgOrigin, එය සම්පාදකයා දෝෂ/අවවාද පණිවිඩ ජනනය කළේ කොතැනද යන්න පෙන්වයි. පණිවිඩය පැමිණියේ කොහෙන්ද යන්න පැහැදිලි නැති විට මෙය උපකාරී වේ.

  • පසු අන්තය වෙනස් කිරීමට ධජය —පසුපෙළ:js|c|cpp|objc (හෝ -b:js, ආදිය) එකතු කරන ලදී.

  • nimcache වෙත ද්විමය ප්‍රතිදානය කිරීමට --usenimcache ධජය එකතු කරන ලදී.

  • යතුරු ඉවත් කර ඇත: --oldNewlines, --laxStrings, --oldast, --oldgensym

  • nimsuggest උපයෝගීතාව දැන් පූර්ව ප්‍රකාශය පමණක් නොව, def ඉල්ලීමක් ක්‍රියාත්මක කරන ස්ථානය ද පෙන්වයි.

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

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