Linguaxe de programación Nim versión 1.2.0

Presentado versión da linguaxe de programación do sistema Nim 1.2. A linguaxe Nim usa dixitación estática e foi creada pensando en Pascal, C++, Python e Lisp. O código fonte de Nim compílase nunha representación C, C++ ou JavaScript. Posteriormente, o código C/C++ resultante compílase nun ficheiro executable mediante calquera compilador dispoñible (clang, gcc, icc, Visual C++), o que lle permite acadar un rendemento próximo ao C, se non se ten en conta os custos de execución. o colector de lixo. Similar a Python, Nim usa sangría como delimitadores de bloque. Admítense ferramentas e capacidades de metaprogramación para crear linguaxes específicas de dominio (DSL). Código do proxecto subministrado baixo a licenza MIT.

Os cambios notables na nova versión inclúen:

  • Implantouse un novo colector de lixo ARC ("-gc:arc").
  • No módulo "azucre"Engadíronse novas macros para recoller, duplicar e capturar.
  • Engadida nova macro "con".
  • Engadíronse unha gran parte de novas chamadas á biblioteca estándar, incluíndo 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, etc.
  • Engadíronse novos módulos std/stackframes e std/compilesettings.
  • Engadíronse ao compilador as opcións “—asm” (para análise do código de montaxe xerado) e “—panics:on” para a saída forzada dos erros IndexError e OverflowError, sen a posibilidade de ser interceptado polo manejador “try”.
  • Mellora a detección de posibles desbordamentos do buffer.

Fonte: opennet.ru

Engadir un comentario