Spoustu teorie, ale moc jsem tu nenašel praktické zkušenosti.
Mně Rust vyhovuje, protože lze s minimálním úsilím vyvíjet multiplatformní řešení. Instalace kompilačního prostředí je o stažení jedné binárky z netu (rustup) a jejím spuštění, na všech podporovaných platformách. Aktualizace na novou verzi rustu - opět jeden příkaz. Výsledné binárky jsou velice svižné, nemají problémy s latencí (bez GC), velice snadno přenositelné mezi platformami. Debug je plný užitečných kontrol, po vychytání problémů stačí přidat "--release" a mám několikanásobně menší binárku plnou optimalizací, která běží výkonově i paměťově úsporně, srovnatelně s Cečkem.
Vývoj je velice pohodlný a úplně stejný ve win i v linuxu - stáhnout Intellij Community version a dokliknout Rust plugin. Plugin se drží aktuálního vývoje jazyka, nová verze každých pár dnů. Idea/plugin vše naindexuje, prokliky metod externích crates vedou rovnou do jejich zdrojáků. Zobrazování chyb rovnou při psaní je zrovna v Rustu hodně užitečné, obzvláště pro poučeného začátečníka jako já. Vývoj je nesrovnatelně rychlejší, než čekat, až s čím přijde kompilátor. Sice v community verzi nefungují v rustu breakpointy, ale to není tak velká překážka.
Snadno mohu zdrojáky crate naklonovat do vedlejšího adresáře a upravovat ji současně s mím projektem v jednom prostředí, pokud něco v nich potřebuji upravit, atd. Vyleze mi opět jedna binárka, a pokud autor crate akceptuje mé změny (typicky zveřejnění užitečných fieldů v public struktech) a vydá novou verzi, stačí v cargo.toml přehodit dependency změnit jeden řádek na novou upstream verzi. V kompilaci nemusím měnit nic, vše se děje automaticky na pozadí.
Pro SBC/ARM si vyvinu/zkompiluji pohodlně v IDE na mnohojádrové pracovní stanici s několika velkými monitory, cross-zkompiluji do arm64 a stačí přes scp překopírovat binárku na RPi, která by se jinak při kompilaci pořádně zapotila a já předopoval kafem.
Narozdíl od C mám k dispozici pohodlnou paletu hotových struktur, pohodlí téměř jako v javě (hashmapy, hashsety, kanály mezi vlákny všech možných vlastností), dobře vyřešenou podporu chyb s minimální režií, pořádné enumy.
Kompilátor mě nutí psát přehlednější kód. Když srovnám první verzi a verzi po delším boji akceptovanou kompilátorem, snad vždycky je výsledek čistější, logičtější, méně zašmodrchaný, se správně vyřešeným vlastnictvím, atd. Obvykle si po vyřešení konkrétní stížnosti kompilátoru říkám - no jo, takhle to dává smysl, proč jsem to tak neudělal rovnou... Jsou i výjimky, kdy je zkompilovatelný kód více "přes ruku", ale s každou verzi rustu jich ubývá.
Programy napsané v rustu bych v C nikdy nenapsal, protože bych neuměl tak pečlivě hlídat paměť a hodně dlouho bych lovil segfaulty. V Rustu to po první úspěšné kompilaci funguje na 90%, i složitější programy s více vlákny.
Ve win jsem nikdy neprogramoval a s rustem jsem si troufl na javasound nativní DLL pro WASAPI Exclusive
https://github.com/pavhofman/csjsound-wasapi . Je tam samozřejmě SPOUSTU prostoru ke zlepšování, ale bez rustu bych na windowsí DLL ani nepomyslel, v C/C++ jsem systémové věci ve windowsech nikdy nedělal, nevím ani v čem bych ten kód psal.