Выпуск языка программирования Rust 1.2, развиваемого проектом Mozilla

Материал из Викиновостей, свободного источника новостей
Перейти к навигации Перейти к поиску

8 августа 2015 года

Wikinews-logo-ru.svg

Состоялся выпуск языка программирования Rust 1.2, развиваемого проектом Mozilla, обеспечивающего автоматическое управление памятью и предоставляющего средства для высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime. Параллельно с Rust совместно с компанией Samsung развивается экспериментальный браузерный движок Servo, написанный на языке Rust и отличающийся поддержкой многопоточного рендеринга web-страниц и распараллеливанием операций с DOM (Document Object Model).

В новой версии продолжена работа по оптимизации производительности, значительно ускорен процесс компиляции и представлены наработки по обеспечению распараллеливания сборки на многоядерных системах (добавлена опция «-C codegen-units=число потоков»). Например, сборка hyper теперь выполняется на 16 % быстрее, html5ever — на 62 %, regex — на 32 %, rust-encoding на 35 %. Генерация кода в параллельном режиме на четырёхъядерном компьютере даёт ускорение ещё на 33 %. Ограничением параллельного режима сборки является невозможность использования некоторых режимов оптимизации, что ограничивает его применение промежуточными и отладочными сборками.

Проведена значительная оптимизация производительности пакетного менеджера Cargo, например, время сборки пакета с движком Servo удалось сократить в 10 раз. В Cargo также добавлена поддержка совместно используемых целевых директорий, в которых кэшируются типовые для разных пакетов зависимости, что позволяет дополнительно существенно сократить время сборки сложных проектов.

В языке завершена реализация типов динамически изменяемого размера (DST, dynamically-sized type), позволяющих создавать указатели (Rc) на элементы массивов и объекты, динамически адаптирующиеся к изменениям в их структуре. Кроме сборки с применением инструментария GNU в Rust реализована возможность компиляции с использованием MSVC (Microsoft Visual C) и прямого связывания кода на языке Rust с кодом, собранным в MSVC.

 

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

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

Комментарии:Выпуск языка программирования Rust 1.2, развиваемого проектом Mozilla