Ilmus uus versioon sĂŒsteemikeelest nim, mis sai sel septembril aasta tĂ€is pĂ€rast esimese stabiilse versiooni vĂ€ljaandmist . SĂŒntaksilt sarnaneb keel Pythoniga, kuid jĂ”udluselt on see peaaegu nagu C++. Vastavaltkeel laenab suures osas jĂ€rgmiste keelte elemente (kaalu jĂ€rgi): Modula 3, Delphi, Ada, C++, Python, Lisp, Oberon. KKK Töötatakse kĂ”ikjal tĂ€nu kompileerimisvĂ”imele C/C++/Objective-C/JS. Tugi on olemas
makrodele OOP-le, geneerikutele, eranditele, kuumale koodide asendamisele, ja palju muud. Litsents â MIT. TĂ€htsamad muutused:
Ilmus uus jÀÀkide koristaja ORC, mis kasutab algoritmi ARC, kuid mis töötleb tsĂŒklilisi viiteid kahel erilisel viisil. Aktiviseeritakse valikuga âgc:orc. ARC/ORC erinevustest
-
on suurepĂ€rane artikkel Lisatud rangete funktsioonide mÀÀratluste reĆŸiim, kus aktiveeritakse tĂ€iendav kontroll objektide muutumatuse ĂŒle. Aktiviseeritakse pragma {.experimental: "strictFuncs".} abil vĂ”i vĂ”tmega âexperimental:strictFuncs..
Kohustuslik sĂ”na from vĂ”ib nĂŒĂŒd kasutada operaatorina.
Lisatud pragma .noalias. See vastab C keele vÔtmele restrict, et suurendada efektiivsust, mida see sÔna vÔib tagada.
Konkreetsed hoiatavad sĂ”numid saab nĂŒĂŒd muutuda vigadeks lĂ€bi âwarningAsError[X]:on|off.
Uus kĂ€sk: nim r main.nim [argsâŠ], mis kompileerib ja kĂ€ivitab main.nim ning sisaldab âusenimcache, nii et tulemus salvestatakse $nimcache/main$exeExt, kasutades sama loogikat nagu nim c -r, et vĂ€ltida uuesti kompileerimist, kui lĂ€htekood ei ole muutunud. NĂ€ide:
nim r compiler/nim.nim âhelp # esmakordne kompileerimine
echo âimport os; echo getCurrentCompilerExe()â | nim r â # see töötab samuti
nim r compiler/nim.nim âfullhelp # ilma uuesti kompileerimata
nim r ânimcache:/tmp main # binaar salvestatud /tmp/main
Lisatud uus vihje âhint:msgOrigin, mis nĂ€itab, kus kompilaator genereeris vigade/hoiatuseteateid. See aitab, kui pole selge, kust teade tuli.
Lisatud lipp âbackend:js|c|cpp|objc (vĂ”i -b:js jne) bĂ€kendi vahetamiseks.
Lisatud lipp âusenimcache binaaride vĂ€ljundiks nimcache-s.
Eemaldatud vĂ”tmed: âoldNewlines, âlaxStrings, âoldast, âoldgensym
Nimsugesti tööriist nĂ€itab nĂŒĂŒd mitte ainult eelkohustuslikku avaldust, vaid ka rakenduse asukohta def-pĂ€ringu jĂ€rgi.
Lisaks on lisatud hulgaliselt muudatusi standardses teegis ja palju veaparandusi.
UEFI ja Fedora
Allikas: linux.org.ru
