Google lance Carbon, un successeur expérimental au langage C++
Frustrés par la lente évolution du langage C++, des ingénieurs de Google ont mis au point un nouveau langage de programmation open source "expérimental". Répondant au nom de Carbon, celui-ci se veut meilleur que C++ sur plusieurs points et pourrait se présenter comme son successeur.
De la même manière que Microsoft a développé TypeScript pour contrer certains aspects de JavaScript, et que Kotlin a été créé pour pallier à certaines faiblesses de Java, Carbon apporte des évolutions à un langage legacy qui peine à s'améliorer.

Bjarne Stroustrup, le créateur de C++, dans les années 2000
Présenté fin juillet par l'ingénieur Chandler Carruth (Google), Carbon adresse des sujets comme la sécurité de la mémoire, la généricité (abstraction du type), en proposant également une syntaxe plus simple, avec un oeil neuf et adapté aux concepts de développement modernes.
Comme l'explique l'ingénieur dans le repo GitHub du projet Carbon, le langage de choix pour construire des applications sensibles aux performances a bien souvent été C++, qui s'accompagne d'un lot de problématiques qui entravent les développeurs dans leur expérience de programmation.
Selon lui, le langage C++ a accumulé des décennies de dette technique, en traînant des pratiques d'un autre temps qui lui viennent de son propre prédécesseur, le langage C. Les mainteneurs de C++ priorisent quant à eux le sujet de la rétrocompatibilité afin d'assurer le support de projets à grande ampleur comme Linux et son gestionnaire de packages.
Les évolutions du langage C++ seraient par ailleurs étouffées par une lourdeur bureaucratique et un long processus en cascade, le comité de décision s'intéressant plus à la standardisation qu'au design, ce qui empêche bien souvent l'ajout de nouvelles fonctionnalités.
Avec Carbon, les ingénieurs Google ont pris le pari d'instaurer un environnement plus ouvert et entraîné par la communauté. Le projet est maintenu et partagé sur GitHub et ses évolutions discutées dans un serveur Discord dédié.
Selon la documentation du projet, Carbon prévoit de traiter et couvrir les sujets suivants :
- Le souci de la performance des applications
- Les possibilités d'évolution du langage
- Du code simple à lire, comprendre et écrire
- La sécurité autour du langage et des mécanismes de test
- Permettre des développements rapides et évolutifs
- La prise en compte d'OS, d'architectures hardware et d'environnements modernes
- L'interopérabilité avec du code C++ et la facilité de migration de projets C++ vers Carbon
Pour les experts C++ qui figurent parmi vous, voici un exemple de code C++ traduit en Carbon, fourni par l'équipe de Carbon.
Premièrement, le code C++ :

Et maintenant, le même code en Carbon :

Ne cherchez pas à vous former à ce nouveau langage tout de suite, car il est important de noter que Carbon est en cours de construction et n'est pas encore prêt à être utilisé : à ce jour, il n'existe pas encore de compilateur ou d'outils Carbon opérationnels, mais il est néanmoins possible de jeter un oeil à l'interpréteur de démo du langage ici.
Alors que Carbon a commencé comme un projet interne chez Google, l'équipe de développement souhaite réduire les contributions des salariés de Google ou de toute autre entreprise à moins de 50% d'ici la fin de l'année, l'objectif à terme étant de remettre le langage entre les mains d'une organisation à but non lucratif au sein de laquelle des volontaires prendraient la main sur les développements.
Se rendre sur le GitHub du projet Carbon
À lire aussi sur Les Joies du Code :
- 🎧 Avis aux nostalgiques : le lecteur audio Winamp est de retour !
- ⚡️ GitHub s’attire les foudres de la communauté open source avec son IA Copilot
- 🗞 Sortie de Vim 9.0 : nouveau langage de script et amélioration des performances
À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.
À lire également
Ma phobie administrative a enfin trouvé son fix, et il s’appelle Abby
Je DÉTESTE, je HAIS l'administratif. Voilà, c'est dit, et ça me semble être une belle entrée en matière pour cet article. C’est assez simple, à mon niveau, tout ce qui...
Articles similaires
Microsoft crée une technologie révolutionnaire capable de stocker des données dans du verre pendant 10 000 ans
Microsoft et Amazon unissent leurs forces pour démanteler un vaste réseau d'arnaqueurs indien
PHP 8.3 est sorti, découvrez les nouveautés pour le langage
Chaque mois, GitHub perd un pognon monstre à cause de Copilot
Microsoft crée une technologie révolutionnaire capable de stocker des données dans du verre pendant 10 000 ans
Microsoft et Amazon unissent leurs forces pour démanteler un vaste réseau d'arnaqueurs indien
Plus de contenu
Quand je me prépare pour annoncer au chef que j'ai fait tomber la prod de notre plus gros client
Quand mes vacances me font échapper à une mise en prod très probablement désastreuse
Quand je parviens à livrer mon code juste avant la deadline
Quand un collègue commence à douter de mon code
Quand j'utilise une solution complètement inappropriée et que ça fonctionne quand même
Quand le commit d'un collègue casse mon code
Quand je découvre les nouvelles demandes du client
Quand je demande à Claude Code de corriger un bug sans lui avoir filé les accès au repo
Quand je me prépare pour annoncer au chef que j'ai fait tomber la prod de notre plus gros client
Quand mes vacances me font échapper à une mise en prod très probablement désastreuse
Quand je parviens à livrer mon code juste avant la deadline
Quand un collègue commence à douter de mon code
Quand j'utilise une solution complètement inappropriée et que ça fonctionne quand même