Izdanje programskog jezika Nim 1.2.0

Predstavljeno izdanje sistemskog programskog jezika Nim 1.2. Jezik Nim koristi statično tipkanje i kreiran je s pažnjom na Pascal, C++, Python i Lisp. Nim izvorni kod kompilira se u C, C++ ili JavaScript reprezentaciju. Nakon toga, dobiveni C/C++ kod se kompajlira u izvršnu datoteku pomoću bilo kojeg dostupnog prevoditelja (clang, gcc, icc, Visual C++), što vam omogućuje postizanje performansi bliskih C-u, ako ne uzmete u obzir troškove rada sakupljač smeća. Slično Pythonu, Nim koristi uvlake kao graničnike blokova. Podržani su alati za metaprogramiranje i mogućnosti za stvaranje jezika specifičnih za domenu (DSL). Šifra projekta isporučuje se pod licencom MIT-a.

Značajne promjene u novom izdanju uključuju:

  • Implementiran je novi skupljač smeća ARC ("-gc:arc").
  • U modulu "šećer"Dodane su nove makronaredbe za prikupljanje, kopiranje i snimanje.
  • Dodana nova makronaredba "sa".
  • Velik dio novih poziva dodan je u standardnu ​​biblioteku, uključujući strformat.fmt, strtabs.clear, browsers.osOpen, typetraits.tupleLen, typetraits.genericParams, os.normalizePathEnd, times.fromUnixFloat, os.isRelativeTo, times.isLeapDay , net.getPeerCertificates, jsconsole.trace, jsconsole.table, jsconsole.exception, sequtils.countIt, itd.
  • Dodani su novi moduli std/stackframes i std/compilesettings.
  • Opcije “—asm” (za analizu generiranog asemblerskog koda) i “—panics:on” za prisilni izlaz na pogreške IndexError i OverflowError dodane su kompajleru, bez mogućnosti da ih presretne rukovatelj “try”.
  • Poboljšano otkrivanje mogućih prekoračenja međuspremnika.

Izvor: opennet.ru

Dodajte komentar