Релиз языка программирования Nim 1.4.0

18 октября 2020 года

Представлен релиз языка системного программирования Nim 1.4. Язык Nim использует статическую типизацию и создан с оглядкой на Pascal, C++, Python и Lisp. Исходный код на языке Nim компилируется в представление на C, C++ или JavaScript. В дальнейшем полученный C/C++ код компилируется в исполняемый файл при помощи любого доступного компилятора (clang, gcc, icc, Visual C++), что позволяет добиться производительности близкой к Си, если не учитывать затраты на выполнение сборщика мусора. По аналогии с Python в Nim в качестве разделителей блоков применяются отступы. Поддерживаются средства метапрограммирования и возможности для создания предметно-ориентированных языков (DSL). Код проекта поставляется под лицензией MIT.

Среди заметных изменений в новом выпуске:

  • Представлен новый сборщик мусора ORC ("--gc:orc"), который использует тот же алгоритм подсчёта ссылок на объекты, что и в предложенном в прошлом выпуске сборщике мусора ARC, но дополнительно поддерживает обработчик циклов, позволяющий использовать ARC с реализацией механизма async в стандартной библиотеке.
  • Добавлен экспериментальный режим ужесточения проверок при определении функций, при котором выводится ошибка при выявлении возможности мутации объектов, доступных через параметры, определённые без явного указания типа. Режим активируется при помощи pragma '{.experimental: "strictFuncs".}' или флага "--experimental:strictFuncs".
  • Внесены многочисленные изменения и улучшения в стандартную библиотеку и компилятор.

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Релиз языка программирования Nim 1.4.0», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.