Rust Выпускает Новые Версии


Были выпущены две новые версии Rust: 1.2 в стабильной версии и 1.3 в бета-версии.  Основными улучшениями в Rust 1.2 являются более быстрая компиляция и параллельная генерация кода, а также поддержка набора инструментов MSVC.

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

Сегодня отмечается завершение циклов выпуска Rust 1.2 stable и 1.3 beta! Читайте дальше для выделения или ознакомьтесь с примечаниями к выпуску для получения более подробной информации.

Улучшения производительности компилятора показывают, что новая версия Rust работает на 33% быстрее, чем Rust 1.0 в тестах бенчмарка. Согласно сообщению о новой версии в блоге на языке Rust, :

«всестороннее улучшение производительности компилятора в реальном мире. Репрезентативные ящики включают hyper (компилируется в 1,16 раза быстрее), html5 (в 1,62 раза быстрее), regex (в 1,32 раза быстрее) и rust-кодирование (в 1,35 раза быстрее).”

Улучшение скорости на 33% происходит благодаря параллельному коду, который, как говорится в сообщении в блоге, особенно полезен для отладочных сборок, поскольку он предотвращает некоторые оптимизации. Однако он также может использоваться с оптимизациями в качестве эффективного флага-O1.

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

В новом выпуске улучшена поддержка Microsoft Visual C (MSVC), и теперь вы можете напрямую связать код Rust с кодом, созданным с использованием собственной цепочки инструментов Windows. Разработчики говорят, что:

“компилятор загружается на MSVC, у нас есть предварительные ночные сеансы, и мы тестируем все ящики rust-lang против MSVC. Поддержка размотки пока недоступна (процесс прерывается в панике), но ведется работа по ее приземлению.”

С точки зрения языка, завершение поддержки динамически изменяемого типа (DST) означает, что интеллектуальные указатели, такие как Rc, могут быть легко применены к массивам и объектам признаков, что делает Rc<[T]> полностью пригодным для использования.

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

Помимо стабильного выпуска 1.2, бета-версия 1.3 предусматривает введение Rustonomicon, новой книги, охватывающей “Темные искусства продвинутого и небезопасного программирования Rust”. Более практично, есть ряд повышений производительности по сравнению с теми, что в 1.2, включая более эффективный алгоритм для сопоставления подстрок; улучшения заполнения нуля; и реализация Read::read_to_end была специализирована для stdin и файла, что привело к дополнительному ускорению.

Команда также добавила предварительную поддержку для таргетинга на Windows XP. Хотя они не намерены рассматривать Windows XP как платформу “первого уровня”, теперь можно создавать код Rust для XP, если вы избегаете определенных частей стандартной библиотеки.


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