Verze Nim 1.2.0

Byla vydána nová verze systémového programovacího jazyka Nim. Ta má částečnou nekompatibilitu s verzí 1.0, například kvůli přísnějšímu přetypování. Ale na to existuje příznak —useVersion:1.0.

Hlavní novinkou je nový garbage collector, který je aktivován volbou —gc:arc. Autor jazyka Andreas Rumpf plánuje napsat podrobný článek o výhodách ARC, zatím doporučuje se podívat na jeho vystoupení na FOSDEM, kde jsou ukázány výsledky benchmarků.

  • Kompilátor nyní podporuje volbu —asm pro pohodlnější studium generovaného assemblerového kódu.
  • Pragma align může být použita pro proměnné a pole objektů, je to podobné jako alignas v C/C++.
  • =sink operátor je nyní volitelný. Kompilátor nyní může využívat kombinaci =destroy a copyMem pro efektivní přesun objektů.
  • Přetypování na unsigned integers není kontrolováno během běhu. Podrobnosti jsou v https://github.com/nim-lang/RFCs/issues/175
  • Nová syntaxe pro lvalue: var b {.byaddr.} = expr, aktivováno importem std/decls
  • Kompilátor podporuje nový klíč —panics:on, který způsobuje, že runtime chyby jako IndexError nebo OverflowError se stanou fatálními chybami, které nelze zachytit pomocí try. To může zlepšit efektivitu runtime a velikost programu.
  • Generovaný JS kód nyní používá pouze mezery místo směsice mezer a tabulátorů.
  • Kompilátor nyní podporuje pragma .localPassc, pomocí které lze zpracovat speciální možnosti C(++) backendu pro C(++) soubor generovaný z aktuálního modulu Nim.
  • Nimpretty nyní nepřijímá záporné argumenty pro nastavení odsazení, protože to narušovalo soubory.
  • Byly přidány nové makra (collect, dup, capture), aktivované importem sugar.

Kromě toho byla přidána řada změn do standardní knihovny a mnoho oprav chyb.

Zdroj: linux.org.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster