Скоро с друзьями будем писать ядро для MCBE на расте, вот там-то и будет триндец.. возможно, придётся даже майн реверсить (а там кажись UWP C++, так что будет сложно) ибо что-то мне подсказывает, что протокол у него не раскрывает всей картины в полной мере.
А так да, раст по началу сложно (из-за овнершипов этих вот, лайфтаймов, борроучекеров) и поэтому приходится подстраиваться под них. Но раст блин классный...плохо токо то, что нет тех же кейаргов/вараргов, приходится на макросах писать!
А вообще, из плюсов раста:
1. его система управления памятью (владения) — тебе не нужно как в си/плюсах следить за чтобы ты вызвал free и не произошло утечки памяти, а так же невозможно создать ситуацию, где ты 2 раза очищаешь память по одному адресу/используешь очищенный адрес, все это компилятор проверяет в компайл тайм (!!!!), в нем нет сборщика мусора, а значит нет оверхеда в рантайме (привет го)
2. его система типов — в нем нет классов и ооп как в других языках, (к примеру, наследования), вместо них есть структуры, генерик функции (привет си и го) и трейты. самое важное, наверное — нет null значений, вместо этого есть енумы (типы-суммы).
3. его бесплатные абстракции — тебе предоставляется красивое апи (взять например итераторы), которые компилируются в быстрый машинный код.
4. его менеджер зависимостей и система сборки cargo — нет никакой ебли с настройкой мейкфайлов, ты просто указываешь пакет в манифест-файле и запускаешь компиляцию (а-ля package.json)