Нашри Nim 1.2.0

Версияи нави забони барномасозии системаи Nim бароварда шуд. Он бо версияи 1.0 қисман номувофиқӣ дорад, масалан аз сабаби табдилдиҳии навъи сахттар. Аммо дар ин ҳолат парчам вуҷуд дорад -useVersion:1.0.

Навоварии асосӣ як коллектори нави ахлот аст, ки тавассути опсияи -gc: arc фаъол карда шудааст. Муаллифи ин забон Андреас Рампф ният дорад дар бораи бартариҳои ARC мақолаи муфассал нависад, аммо ҳоло вай шуморо ба хондан даъват мекунад бо баромади худ дар FOSDEM, ки натиҷаҳои санҷишро нишон медиҳад.

  • Компилятор ҳоло опсияи --asm-ро барои санҷиши қулайи коди монтажи истеҳсолшуда дастгирӣ мекунад.
  • Прагмаи align метавонад дар тағирёбандаҳои объектӣ ва майдонҳо истифода шавад, ин ба alignas дар C/C++ монанд аст.
  • Оператори =sink ҳоло ихтиёрӣ аст. Компилятор ҳоло метавонад омезиши =destroy ва copyMem-ро барои ба таври муассир интиқол додани объектҳо истифода барад.
  • Табдилдиҳӣ ба ададҳои беимзо дар вақти иҷро тафтиш карда намешаванд. Тафсилот дар https://github.com/nim-lang/RFCs/issues/175
  • Синтаксиси нав барои lvalue: var b {.byaddr.} = expr, пайваст тавассути import std/decls
  • Компилятор гузариши нави -panics:on-ро дастгирӣ мекунад, ки хатогиҳои вақти корӣ ба монанди IndexError ё OverflowError-ро ба хатогиҳои марговар табдил медиҳад, ки онҳоро тавассути кӯшиш дастгир кардан ғайриимкон аст. Ин метавонад самаранокии вақти кор ва андозаи барномаро беҳтар кунад.
  • Рамзи JS-и тавлидшуда танҳо фосилаҳоро ба ҷои як омехтаи фосилаҳо ва ҷадвалҳо истифода мебарад.
  • Компилятор дастгирии прагмаи .localPassc-ро илова кардааст, ки онро барои коркарди имконоти махсуси пуштибонии C(++) барои файли C(++), ки аз модули ҷории Nim тавлид мешавад, истифода бурдан мумкин аст.
  • Nimpretty дигар далели манфиро барои гузоштани абзор қабул намекунад, зеро ин вайрон кардани файлҳо буд.
  • Макросҳои нав илова карда шуданд (ҷамъ кардан, такрор кардан, забт кардан), ки тавассути шакар воридот пайваст карда шудаанд.

Илова бар ин, ба китобхонаи стандартӣ тағйиротҳои зиёде ворид карда шуданд ва бисёр ислоҳи хатогиҳо.

Манбаъ: linux.org.ru

Илова Эзоҳ