Vydanie Nim 1.2.0

Vyšla nová verzia systémového programovacieho jazyka Nim. Obsahuje čiastočnú nekompatibilitu s verziou 1.0, napríklad kvôli prísnejšiemu prevodu typov. Na tento účel je tu prepínač —useVersion:1.0.

Hlavným novým rysom je nový garbage collector, aktivovaný voľbou —gc:arc. Autor jazyka Andreas Rumpf plánuje napísať podrobný článok o výhodách ARC, zatiaľ čo odporúča oboznámiť sa s jeho prezentáciou na FOSDEM, kde sú prezentované výsledky benchmarkov.

  • Kompilátor teraz podporuje možnosť —asm pre pohodlnejšie štúdium generovaného assemblerového kódu.
  • Možnosť align pragma môže byť použitá pre premenné a polia objektu, podobne ako alignas v C/C++.
  • =sink operátor je teraz voliteľný. Kompilátor môže teraz použiť kombináciu =destroy a copyMem na efektívne presúvanie objektov.
  • Prevody na unsigned integers nie sú kontrolované v runtime. Podrobnosti sú v https://github.com/nim-lang/RFCs/issues/175
  • Nová syntax pre lvalue: var b {.byaddr.} = expr, pridaná prostredníctvom import std/decls
  • Kompilátor podporuje nový prepínač —panics:on, ktorý premieňa runtime chyby ako IndexError alebo OverflowError na fatálne chyby, ktoré nie sú zachytiteľné cez try. To môže zlepšiť efektívnosť runtime a veľkosť programu.
  • Generovaný JS kód používa iba medzery namiesto zmesi medzier a tabulátorov.
  • Do kompilátora bola pridaná podpora .localPassc pragma, ktorá umožňuje spracovať špeciálne možnosti C(+) b backendu pre C(+) súbor generovaný z aktuálneho modulu Nim.
  • Nimpretty teraz neprijíma negatívny argument na nastavenie odsadení, pretože to spôsobovalo poškodenie súborov.
  • Pridali sa nové makrá (collect, dup, capture), ktoré sa importujú cez import sugar.

Okrem toho bolo pridané množstvo zmien v štandardnej knižnici a množstvo opráv chýb.

Zdroj: linux.org.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster