Objavljena je nova verzija Nim sistemskog programskog jezika. Ima djelomičnu nekompatibilnost s verzijom 1.0, na primjer zbog strože konverzije tipa. Ali u ovom slučaju postoji zastavica -useVersion:1.0.
Glavna inovacija je novi sakupljač smeća, omogućen opcijom -gc:arc. Autor jezika, Andreas Rumpf, će napisati detaljan članak o prednostima ARC-a, ali za sada vas poziva da pročitate sa svojim nastupom na FOSDEM-u, koji prikazuje rezultate benčmarka.
- Kompajler sada podržava --asm opciju za praktičnije ispitivanje proizvedenog asemblerskog koda.
- Pragma align može se koristiti na objektnim varijablama i poljima, ovo je slično aligns u C/C++.
- =sink operator je sada opcionalan. Kompajler sada može koristiti kombinaciju =destroy i copyMem za efikasno pomicanje objekata.
- Konverzije u neoznačene cijele brojeve se ne provjeravaju u vremenu izvođenja. Detalji u https://github.com/nim-lang/RFCs/issues/175
- Nova sintaksa za lvalue: var b {.byaddr.} = expr, povezan putem import std/decls
- Kompajler podržava novi prekidač -panics:on, koji pretvara greške izvođenja kao što su IndexError ili OverflowError u fatalne greške koje se ne mogu uhvatiti putem pokušaja. Ovo može poboljšati efikasnost vremena izvođenja i veličinu programa.
- Generisani JS kod koristi samo razmake umesto mešavine razmaka i tabulatora.
- Kompajler je dodao podršku za .localPassc pragmu, koja se može koristiti za rukovanje posebnim C(++) pozadinskim opcijama za C(++) fajl koji je generisan iz trenutnog Nim modula.
- Nimpretty više ne prihvata negativan argument za postavljanje uvlačenja, jer je to razbijanje datoteka.
- Dodati su novi makroi (collect, dup, capture), povezani preko uvoznog šećera.
Osim toga, u standardnu biblioteku dodane su mnoge promjene i mnoge ispravke grešaka.
izvor: linux.org.ru