Зачем нужен Rust?

https://doc.rust-lang.org/nightly/book/ch15-06-reference-cycles.html

если утечки в памяти он не предотвращает? С тем же успехом тогда можно и без него на Котлине каком-нибудь, или на Nemerle. Или на питоне, вот! У питона тоже подсчёт ссылок, так что стратегически разницы никакой.

даже, допустим, что есть сборщик с циклами:

что мешало сделать то же самое на C++?

С тем же успехом, можно поставить вопрос “зачем нужен Kotlin”:

  • появление Rust Июля 7, 2010 (11 лет назад);
  • появление Kotlin Июля 22, 2011 (10 лет назад).

В целом, сравнение Rust, Kotlin и Python на взаимозаменяемость - это само по себе неудачное сравнение, имхо.

Зачем нужен Rust? <…> если утечки в памяти он не предотвращает?

  1. :thinking: каким образом отсуствие строгих гарантий предотвращения утечек памяти как-то перечеркивает все остальные фишки языка и его нужность в целом? он по прежнему имеет весьма неплохую систему типов, явные unsafe’ы, хороший инструментарий, страхует от многих бед с памятьью (согласно своему определению memory safety) и очень многих UB, тд, тп.
  2. раст старается предотвращать случайные утечки памяти насколько это возможно для системного языка - т.е., в данном случае, без обязательного толстого рантайма со сборщиком мусора, такое уж фундаментальное ограничение поставленной перед языком задачи, что поделать.
  3. учитывая отсутсвие единого определения “утечки”, никакой язык с насколько угодно навороченным рантаймом их не предотвращает целиком - только подмножества.

Я согласен с тем, что все утечки никто на данный момент не предотвращает. Но мне тупо удобнее лепить на C#, чем на Rust.

Так и хорошо, пиши на C#, если твой задачи позволяют это делать.

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