Nim 1.2.0 መለቀቅ

የኒም ሲስተም ፕሮግራሚንግ ቋንቋ አዲስ ስሪት ተለቋል። ከስሪት 1.0 ጋር ከፊል ተኳሃኝነት የለውም፣ ለምሳሌ በጠንካራ አይነት ልወጣ ምክንያት። ግን በዚህ አጋጣሚ ባንዲራ አለ -useVersion:1.0.

ዋናው ፈጠራ በ --gc:arc አማራጭ የነቃ አዲስ ቆሻሻ ሰብሳቢ ነው። የቋንቋው ደራሲ አንድሪያስ ራምፕፍ ስለ ARC ጥቅሞች ዝርዝር ጽሑፍ ሊጽፍ ነው, አሁን ግን ማንበብን ይጠቁማል. ከ FOSDEM ንግግር ጋር, ይህም የቤንችማርክ ውጤቶችን ያሳያል.

  • የተሰራውን የመሰብሰቢያ ኮድ ለመመርመር ቀላል ለማድረግ አቀናባሪው አሁን --asm የሚለውን አማራጭ ይደግፋል።
  • align pragma በC/C++ ውስጥ ካለው አሊማስ ጋር በሚመሳሰል የነገሮች ተለዋዋጮች እና መስኮች ላይ ጥቅም ላይ ሊውል ይችላል።
  • የ = sink ኦፕሬተር አሁን አማራጭ ነው። አቀናባሪው አሁን ነገሮችን በብቃት ለማንቀሳቀስ =destroy እና copyMem ውህድ መጠቀም ይችላል።
  • ወደ ያልተፈረሙ ኢንቲጀሮች የሚደረጉ ለውጦች በሂደት ጊዜ አይመረመሩም። ዝርዝሮች በ https://github.com/nim-lang/RFCs/issues/175
  • አዲስ አገባብ ለ lvalue፡ var b {.byaddr.} = expr፣ በማስመጣት std/decls ተካቷል
  • አቀናባሪው እንደ IndexError ወይም OverflowError ያሉ የአሂድ ጊዜ ስህተቶችን ወደ ገዳይ ስህተቶች የሚቀይር አዲስ --panic:በአማራጭ ይደግፋል። ይህ የአሂድ ጊዜ ቅልጥፍናን እና የፕሮግራሙን መጠን ያሻሽላል።
  • የመነጨው የJS ኮድ ከቦታዎች እና ታብ ሆጅፖጅ ይልቅ ክፍተቶችን ብቻ ነው የሚጠቀመው።
  • ለ.localPassc pragma ወደ ማቀናበሪያው ድጋፍ ታክሏል፣ በዚህም ከአሁኑ የኒም ሞጁል ለሚፈጠረው የC(++) ፋይል ልዩ የC(++) የኋላ አማራጮችን ማስተናገድ ይችላሉ።
  • Nimpretty ከአሁን በኋላ የመግባት አሉታዊ መከራከሪያን አይቀበልም፣ ይህ ፋይሎችን ስለሚሰብር ነው።
  • በስኳር ማስመጣት በኩል የተገናኙ አዲስ ማክሮዎች (መሰብሰብ ፣ ማጠራቀም ፣ መቅረጽ)።

በተጨማሪም፣ ብዙ ለውጦች ወደ መደበኛው ቤተ-መጽሐፍት እና ብዙ የሳንካ ጥገናዎች ተጨምረዋል።

ምንጭ: linux.org.ru

አስተያየት ያክሉ