Джулия Улучшает Многопоточность


Джулия выпустила новую версию с поддержкой многопоточности и возможностью добавления методов к абстрактному типу. Недавно Джулия вошла в шестерку лучших языков для проектов машинного обучения на GitHub.

Julia-это динамический язык для технических вычислений, который особенно хорош для запуска программ в стиле MATLAB и R. Разработка Джулии началась в Массачусетском технологическом институте в 2009 году.

Первым улучшением в новом выпуске является поддержка многопоточности. Это все еще находится на ранней стадии, и в этом выпуске есть экспериментальный макрос (thread@spawn), который запускает задачу в любом доступном потоке. Написав о новом объекте в начале этого года, разработчики заявили, что

«любой фрагмент программы может быть помечен для параллельного выполнения, и “задача” будет запущена для автоматического запуска этого кода в доступном потоке. Динамический планировщик обрабатывает все решения и детали за вас.»

Конструктор каналов был упрощен, поэтому его проще использовать и он более «идиоматичен», а операции ввода-вывода на системном уровне и глобальный генератор случайных чисел стали потокобезопасными и локальными по потоку. Существует новый аргумент канала spawn=true, который можно использовать для планирования созданной задачи в любом доступном потоке, в соответствии с поведением потоков @ spawn.

В дополнение к поддержке многопоточности, Julia теперь позволяет добавлять методы к абстрактному типу. Он также теперь имеет синтаксис для печати и синтаксического анализа нестандартных имен переменных.

В стандартной библиотеке был добавлен метод для поиска регулярных выражений или строк в строке и для извлечения количества совпадений.

Еще одной областью, требующей улучшения, являются массивы нулевой размерности. Теперь они последовательно сохраняются в возвращаемых значениях математических функций, которые работают с массивом(массивами) в целом. В предыдущих версиях функции+, -,*,/, conj, real и imag возвращали развернутый элемент при работе с массивами нулевой размерности.


Добавить комментарий