Vydání programovacího jazyka Nim 1.2.0

Předložené vydání systémového programovacího jazyka Nim 1.2. Jazyk Nim používá statické psaní a byl vytvořen s ohledem na Pascal, C++, Python a Lisp. Zdrojový kód Nim je zkompilován do reprezentace C, C++ nebo JavaScript. Následně je výsledný kód C/C++ zkompilován do spustitelného souboru pomocí libovolného dostupného kompilátoru (clang, gcc, icc, Visual C++), což umožňuje dosáhnout výkonu blízkého C, pokud nepočítáte náklady na provoz popelář. Podobně jako v Pythonu používá Nim jako oddělovače bloků odsazení. Jsou podporovány metaprogramovací nástroje a možnosti pro vytváření doménově specifických jazyků (DSL). Kód projektu dodáváno pod licencí MIT.

Mezi významné změny v nové verzi patří:

  • Implementován nový sběrač odpadků ARC („-gc:arc“).
  • V modulu"cukr"Přidána nová makra shromažďovat, kopírovat a zachytávat.
  • Přidáno nové makro "s".
  • Do standardní knihovny byla přidána velká část nových volání, včetně 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 atd.
  • Přidány nové moduly std/stackframes a std/compilesettings.
  • Do kompilátoru byly přidány možnosti „—asm“ (pro analýzu generovaného kódu sestavení) a „—panics:on“ pro nucené ukončení při chybách IndexError a OverflowError, aniž by bylo možné je zachytit obslužným programem „try“.
  • Vylepšená detekce možného přetečení vyrovnávací paměti.

Zdroj: opennet.ru

Přidat komentář