Новая версия языка программирования Mozilla Rust была выпущена с целью стабилизации синтаксиса языка.
Новая версия удаляет режимы аргументов и имеет полную интеграцию заимствованных указателей. Rust-это язык выражений с фигурными скобками и блочной структурой, который похож на C и C++.
Он имеет другой синтаксис, чем C, и был разработан с целью дать разработчикам способы написания кода, который хорошо работает в больших и параллельных системах. Оригинальный дизайн Rust был разработан разработчиком Грейдоном Хоаром, хотя более поздние работы были выполнены Mozilla.
(нажмите, чтобы увеличить)
Одним из основных изменений в новой версии является полная интеграция заимствованных указателей, а также удаление режимов аргументов. До этой версии вы могли полагаться на эвристику, ориентированную на тип, чтобы выбрать поведение передачи аргументов по умолчанию, но разработчики сообщили, что это сбивает с толку, поэтому средство было удалено.
Рекомендация о том, что заимствованные указатели теперь полностью созрели и должны использоваться, подчеркивает одну из наиболее необычных особенностей Rust. Он имеет три типа указателей:
заимствованный, уникальный и управляемый.
Управляемые указатели облегчают сборку мусора; уникальные указатели позволяют избежать необходимости использовать сборку мусора; а заимствованные указатели позволяют функциям работать как с уникальными, так и с управляемыми указателями.
Сила заимствованного указателя заключается в том, что его можно использовать для указания в любом месте: в общие и обменные кучи, в стек и даже во внутреннюю часть другой структуры данных.
В блоге Baby Steps есть хороший учебник по заимствованным указателям от разработчика Mozilla Rust Нико Мацакиса.
Кто — то недавно пошутил, что если вы можете повеситься с одним указателем, то три разных типа должны выполнить эту работу за гораздо меньшее время, но я уверен, что это неправда.
Другие изменения в Rust включают замену классов структурами, улучшение отчетов об ошибках и сокращение списка зарезервированных ключевых слов.