- Modificato
Nasce di recente Carbon, il nuovo linguaggio di programmazione (sperimentale) general-purpose ideato da Google per essere il "successore di C++" (idea ambiziosa). Si differenzia ad esempio da Rust, l'idea è quella di mantenere interoperabilità bidirezionale, facilità di migrazione dal C++. Le performance del C++ sono buone, per via della sua struttura e sintassi complessa, spesso non è facile metterci mano per aggiunte, modifiche (miglioramenti incrementali) quindi molti sviluppatori hanno preferito passare a Kotlin, Swift, Go, ecc, nonostante la differente sintassi. Carbon invece dovrebbe abbattere questo ostacolo.
Come paragone, Carbon si presenta in modo analogo a TypeScript per JavaScript o Kotlin per Java. Rispetto al C++, le variazioni di sintassi di Carbon sono piuttosto minime e un programmatore C/C++ le apprenderebbe in poco tempo. L'estensione del file sorgente è .carbon.
Secondo quanto dichiarato (fonte ufficiale):
By the end of 2022, the core Carbon language design should be substantially complete, including designs for expressions and statements, classes, generics and templates, core built-in types and interfaces such as integers and pointers, and interoperability with C++
Riportiamo un esempio di Hello World realizzato con Carbon:
package sample api;
fn Main() -> i32 {
Print("Hello, world!");
return 0;
}
Da evidenziare che ad ottobre 2024 non esiste ancora un vero e proprio compilatore ufficiale, il progetto viene ancora definito "sperimentale" e per testarlo si può usare ad esempio carbon.compiler-explorer.com oppure seguire l'installazione tramite GitHub. Certo è che per diffondersi seriamente (tralasciamo poi l'ambizione utopica "diventerà il sostituto di C++") dovranno essere resi disponibili tool ufficiali, in primis il compilatore, trattandosi di un linguaggio compilato. Anche in termini di popolarità, Tiobe ad ottobre 2024 lo classifica al 57° posto.
Approfondimenti e fonti utili:
carbon.now.sh
github.com/carbon-language
carbon.godbolt.org