Rust 0.4 Полная интеграция заимствованных указателей


Новая версия языка программирования Mozilla Rust была выпущена с целью стабилизации синтаксиса языка.

Новая версия удаляет режимы аргументов и имеет полную интеграцию заимствованных указателей. Rust-это язык выражений с фигурными скобками и блочной структурой, который похож на C и C++.

Он имеет другой синтаксис, чем C, и был разработан с целью дать разработчикам способы написания кода, который хорошо работает в больших и параллельных системах. Оригинальный дизайн Rust был разработан разработчиком Грейдоном Хоаром, хотя более поздние работы были выполнены Mozilla.

 (нажмите, чтобы увеличить)

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

Рекомендация о том, что заимствованные указатели теперь полностью созрели и должны использоваться, подчеркивает одну из наиболее необычных особенностей Rust. Он имеет три типа указателей:

заимствованный, уникальный и управляемый.

Управляемые указатели облегчают сборку мусора; уникальные указатели позволяют избежать необходимости использовать сборку мусора; а заимствованные указатели позволяют функциям работать как с уникальными, так и с управляемыми указателями.

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

В блоге Baby Steps есть хороший учебник по заимствованным указателям от разработчика Mozilla Rust Нико Мацакиса.

Кто — то недавно пошутил, что если вы можете повеситься с одним указателем, то три разных типа должны выполнить эту работу за гораздо меньшее время, но я уверен, что это неправда.

Другие изменения в Rust включают замену классов структурами, улучшение отчетов об ошибках и сокращение списка зарезервированных ключевых слов.


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