Izšla je nova verzija sistemskega programskega jezika Nim. V njej je delna nezdružljivost s različico 1.0, na primer zaradi strožjega pretvarjanja tipov. Toda za ta primer je na voljo zastavica —useVersion:1.0.
Glavna novost je nov zbiralnik smeti, ki ga aktiviramo z možnostjo —gc:arc. Avtor jezika Andreas Rumpf namerava napisati podroben članek o prednostih ARC, zaenkrat pa ponuja, da se seznanite s njegovim nastopom na FOSDEM., kjer so prikazani rezultati benchmarkov.
- Komplier zdaj podpira možnost —asm za lažje študijsko proučevanje proizvedenega assembler koda.
- Align pragma se lahko uporablja za spremenljivke in polja objektov, kar je podobno alignas v C/C++.
- =sink operator je zdaj neobvezen. Komplier zdaj lahko uporablja kombinacijo =destroy in copyMem za učinkovito premikanje objektov.
- Pretvorbe v unsigned integers se ne preverjajo ob izvajanju. Podrobnosti v https://github.com/nim-lang/RFCs/issues/175
- Nova sintaksa za lvalue: var b {.byaddr.} = expr, aktivira se z uvozom std/decls.
- Komplier podpira novo ključ —panics:on, ki pretvarja napake ob izvajanju, kot so IndexError ali OverflowError, v kritične napake, ki jih ni mogoče ujeti z try. To lahko izboljša učinkovitost izvajanja in velikost programa.
- Generiran JS-kod uporablja le presledke namesto zmešnjave presledkov in tabulatorjev.
- Komplier zdaj podpira .localPassc pragma, s katero je mogoče obdelati posebne možnosti C(+) backend za C(+) datoteko, ki se generira iz trenutnega modula Nim.
- Nimpretty zdaj ne sprejema negativnega argumenta za nastavitev zamikov, saj je to lomilo datoteke.
- Dodani so novi makri (collect, dup, capture), ki se aktivirajo z uvozom sugar.
Poleg tega je bilo dodanih številne spremembe v standardnoj knjižnici in številne popravke napak.
Izvor: linux.org.ru
