Weşandina zimanê bernamenûsê Nim 1.4.0

Guhertoyek nû ya zimanê bernamesaziya pergala Nim hate derxistin, ku vê Îlonê yek saliya xwe pîroz kir. yekem guhertoya stabîl. Ziman di hevoksaziyê de mîna Python e, û di performansê de hema hema mîna C ++ ye. Ligor Pirs û Bersîv Ziman bi giranî ji (bi rêza tevkariyê) deyn digire: Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon.


Bi saya şiyana berhevkirina di C/C++/Objective-C/JS de li her deverê dixebite. Ew piştgirî dike makro, OOP, generics, îstîsbarkirin, guherandina koda germ û hê bêtir. Lîsans: MIT.

Guhertinên herî girîng:

  • Berhevkarek nû ya çopê ya ORC heye ku algorîtmaya ji ARC bikar tîne, lê di heman demê de referansên dorhêl bi rengek taybetî digire. Ji hêla vebijarka -gc:orc ve hatî çalak kirin. Di derbarê cûdahiyên ARC / ORC de gotarek mezin heye.

  • Modek ji bo pênaseyên fonksiyonê yên hişk hate zêdekirin, ku kontrolek zêde ji bo guheztina tiştan pêk tîne. Bi pragmaya {.experimental: "strictFuncs".} an jî bi rêya bişkoka --experimental:strictFuncs tê aktîfkirin.

  • Naha peyva key dikare wekî operator were bikar anîn.

  • Zêde kirin .noalias pragma. Ew bi C-ya keyword-ê sînordar dike ku karbidestiya ku peyva sereke dikare peyda bike zêde bike.

  • Hişyariyên taybetî niha dikarin bi rêya --warningAsError[X]:on|off veguherin xeletiyan.

  • Fermana nû: nim r main.nim [args...], ku main.nim berhev dike û dimeşîne, û --usenimcache jî tê de ye, da ku encam di $nimcache/main$exeExt de were hilanîn, bi karanîna heman mantiqê nim c - r dema ku çavkanî nehatine guhertin ji berhevkirinê xilas bibin. Mînak:

nim r berhevkar/nim.nim --help # cara yekem hatiye berhevkirin
echo 'import os; echo getCurrentCompilerExe()' | nim r - # ev jî dixebite
nim r berhevkar/nim.nim --fullhelp # bê berhevkirin
nim r —nimcache:/tmp sereke # binary di /tmp/main de hatiye tomarkirin

  • Nîşanek nû lê zêde kir -hint:msgOrigin, ku dê nîşan bide ku berhevkar peyamên xelet/hişyarî çêdike. Dema ku ne diyar e ku peyam ji ku hatî ev dibe alîkar.

  • Ala lê zêde kir —backend:js|c|cpp|objc (an -b:js, hwd.) da ku paşnavê biguhezîne.

  • Alaya --usenimcache lê zêde kir ku binaryan derxe nimcache.

  • Bişkok hatin rakirin: --oldNewlines, --laxStrings, --oldast, --oldgensym

  • Vebijêrk nimsuggest naha ne tenê pêş-daxuyaniyê, lê di heman demê de cîhê bicîhkirinê jî ji bo daxwazek def nîşan dide.

Wekî din, gelek guhertin li pirtûkxaneya standard û gelek rastkirinên çewtiyê hatine zêdekirin.

Source: linux.org.ru