Carbon è significativamente indietro. L'hanno annunciato giusto per dire "hey guardate, stiamo facendo questa cosa, venite su github a darci consigli e spiegateci cosa volete vedere nel C++ del futuro". Non è detto che tra 2-3 anni sarà usabile e soprattutto non è detto che tra 5 anni sarà ancora vivo, magari
google l'ammazza prima. È un progetto in fase embrionale che per adesso non ha alcun senso prendere in considerazione, non ha nemmeno un compilatore.
Non ho cambiato la mia opinione riguardo a Rust, anche perché non sono più aggiornato a riguardo. Tipicamente ne senti parlare molto bene perché ci sono veramente tanti fan sfegatati. Volevo far vedere anche i lati negativi che troppo spesso passano in sordina. La cosa divertente è che l'unico messaggio sotto il mio è quello di un nuovo utente che si è iscritto solamente per dire quanto ama e quanto è magnifico questo linguaggio di programmazione. Cioè, come volevasi dimostrare...
Vale la pena imparare Rust? Sì, credo che sia un buon linguaggio di programmazione. Buono come tanti altri, ma non certo perfetto. È una mia opinione che la sintassi è atroce, ma che i meccanismi che hanno introdotto per garantire safety (ownership, borrowing e lifetime) abbiano il loro prezzo mi sembra proprio un dato di fatto. Saranno anche (quasi) zero-cost in termini di performace, ma paghi carissimo in termini di flessibilità ed espressività. Dico "quasi" zero-cost perché, per esempio, se vuoi implementare un qualsiasi algoritmo di ordinamento o usi unsafe e rinunci alla feature #1 di questo linguaggio o hai un test-and-branch per ogni accesso all'array (performance peggiori != zero-cost abstraction). Quello che per me è il problema più grande è che ti porta agli antipodi rispetto a linguaggi come python e lisp: non pieghi il linguaggio verso la tua volontà, sei tu a doverti sottomettere al borrow checker. Non vederlo come successore di C++. Magari io non sono nessuno per dirlo, ma guardati l'inizio della presentazione di Carbon. Parafrasando dalla dalla mia memoria, hanno detto qualcosa del tipo: "sentiamo il bisogno di allontanarci dal C++ e trovare un suo successore, ma Rust non è il linguaggio adatto e allora stiamo provando a creare qualcosa di nuovo". L'opinione del team di google che lavora ad LLVM è sicuramente più significativa della mia.
C++ è molto incasinato, ma non è una tragedia. È abbastanza malleabile come linguaggio e puoi limitarti ad usarlo come un C with goodies, come fanno in molti. Continuano ad aggiungere features, ma non sei costretto a tenerti costantemente aggiornato perché alla fine il "vecchio" linguaggio con il "vecchio" stile di programmazione è sempre andato bene ed è ancora okay. Nel 2011 hanno aggiunto un po' di features importanti e da li in avanti hanno spinto abbastanza sul paradigma funzionale perché ultimamente va di moda, ma non sei costretto a spammare lambda e meccanismi di metaprogrammazione complicatissimi. Il problema principale di C++ è che ormai è diventato enorme e non si può deprecare niente o cambiare il comportamento "sbagliato" che spesso ha di default (e.g.,
rule of three/five/zero e cose simili). È per questo che ogni tanto qualcuno prova ad inventarsi il nuovo C++ killer.
Comunque, mi accodo alla tua richiesta: mi piacerebbe sapere cosa ne pensano gli altri utenti!