Спустя несколько месяцев разработки тихо и незаметно вышла новая версия Rust — языка программирования, разрабатываемого Mozilla и нацеленного на безопасность, производительность и параллелизм.
В данном релизе усилия разработчиков были главном образом сосредоточены на доведение до ума системы типов и стандартной библиотеки. Так, одной из основных задач являлось введение инфраструктуры для типов переменного размера. Также, как и обещано, был полностью удалён ~ и @ синтаксис в пользу использования стандартных типов Box и Gc.
Основные изменения:
- Синтаксис
~[T]
был удален из языка, вместо него используетсяVec<T>
; - Синтаксис
~str
был удален из языка, вместо него используетсяString
; - Синтаксис
~T
был удален из языка, вместо него используетсяBox<T>
; - Синтаксис
@T
был удален из языка, вместо него используетсяstd::gc::Gc<T>
; - Байтовые символы, строки и сырые строки теперь предваряются префиксом
b
; - Изменился синтаксис для указания времени жизни замыканий:
<'a>|A, B|: 'b + K -> T
; - Модульная арифметика для вещественных типов была убрана из языка;
- Синтаксис
use foo, bar, baz;
был удален из языка; - Ключевое слово
priv
было удалено из языка; - Поля структур стали по умолчанию приватными;
- Приватные перечислимые типы теперь запрещены;
- Замыкание более не может быть вызвано через &-указатель;
- Индекс вектора и размер битового сдвига теперь может быть представлен только в виде uint;
- Стандартная библиотека теперь являет собой один унифицированный интерфейс к набору нижлежащих библиотек;
- Добавлена новая библиотека libcore, призванная облегчить разработку встраиваемого программного обеспечения;
- Был добавлен модуль regex, также включающий в себя набор статически скомпилированных регулярных выражений;
- Набор I/O примитивов получил возможность прерывать операции по таймауту;
- Добавлен макрос
bitflags!
для упрощения работы с битовыми флагами.
>>> Подробности