Doli njĂ« version i ri i gjuhĂ«s sistemore tĂ« programimit Nim. Ai ka njĂ« pjesĂ« tĂ« papajtueshmĂ«risĂ« me versionin 1.0, pĂ«r shembull, pĂ«r shkak tĂ« konvertimit mĂ« tĂ« rreptĂ« tĂ« tipeve. Por pĂ«r kĂ«tĂ« rast ka njĂ« flamur âuseVersion:1.0.
NjĂ« nga risitĂ« kryesore Ă«shtĂ« mbledhĂ«si i ri i plehrave, i aktivizuar me opsionin âgc:arc. Autori i gjuhĂ«s, Andreas Rumpf, planifikon tĂ« shkruajĂ« njĂ« artikull tĂ« detajuar mbi pĂ«rparĂ«sitĂ« e ARC, ndĂ«rsa pĂ«r momentin ofron tĂ« njihet me fjalimin e tij nĂ« FOSDEM, ku tregohen rezultatet e benchmark-Ă«ve.
- Kompilatori tani mbĂ«shtet opsionin âasm pĂ«r njĂ« studim mĂ« tĂ« lehtĂ« tĂ« kodit assembler tĂ« prodhuar.
- pragma align mund të përdoret për variablat dhe fushat e objektit, siç është alignas në C/C++.
- =sink operatori tani është opsional. Kompilatori tani mund të përdorë kombinimin =destroy dhe copyMem për një zhvendosje efektive të objekteve.
- Konvertimet në integer të papërshkruara nuk kontrollohen në runtime. Detajet mund të gjenden në https://github.com/nim-lang/RFCs/issues/175
- Sintaksa e re për lvalue: var b {.byaddr.} = expr, e lidhur përmes import std/decls
- Kompilatori mbĂ«shtet çelĂ«sin e ri âpanics:on, i cili kthen gabimet e runtime si IndexError ose OverflowError nĂ« gabime fatale qĂ« nuk mund tĂ« kapen pĂ«rmes try. Kjo mund tĂ« pĂ«rmirĂ«sojĂ« efikasitetin e runtime dhe madhĂ«sinĂ« e programit.
- Kodi i gjeneruar JS përdor vetëm hapësira në vend të një përzierjeje të hapësirave dhe tabeve.
- Kompilatori tani mbështet pragma .localPassc, me të cilën mund të trajtohen opsione speciale të backend-it C(++) për skedarin C(++) që gjenerohet nga moduli aktual Nim.
- Nimpretty tani nuk pranon një argument negativ për të rregulluar hapësirat pasi kjo prishi skedarët.
- Janë shtuar makros të reja (collect, dup, capture), të lidhura përmes import sugar.
Përveç kësaj, janë bërë shumë ndryshime në bibliotekën standarde dhe shumë rregullime gabimesh.
Burimi: linux.org.ru
