Manuel Rubio, Semaphore
07.03.2023, 10:05 Uhr
Wird Carbon C++ ersetzen?
Die Programmierspprache Carbon ist ein experimenteller Nachfolger für C++. Manuel Rubio diskutiert in einem Beitrag auf Semaphore, ob Carbon C++ ersetzen wird.
Viele halten C++ für eine durch das jahrzehntelange Aufsammeln von technischen Schulden für eine Programmiersprache, die nur noch schwer zu mondernisieren und auf dem aktuellsten Stand zu halten ist. Auf der Konferenz CppNorth 2022 wurde über potentielle Nachfolger gesprochen. Sprachen mit Garbage Collection (GC) kommen dabei nicht in Frage, weil die GC mit Leistungseinbußen verbunden ist, welche die meisten C++-Entwickler nicht in Kauf nehmen wollen. Als gute Option wurde die Programmiersprache Rust genannt, weil sie Memory Safe ist und sich sehr gut als Ersatz für eine Sprache auf niedriger Ebene eignet. Allerdings funktioniert Rust vor allem dann sehr gut, wenn man gerade ein Projekt beginnt. Soll aber ein C++-Ökosystem mit sehr tiefen Abhängigkeiten nach Rust migriert werden, ist das eine sehr schwierige Aufgabe.
Es fehlt also eine wirkliche Nachfolgesprache, also eine Sprache, die innerhalb eines bestehenden Ökosystems entwickelt wird, ohne dass ein neues Ökosystem aufgebaut werden muss. Eine Sprache, die Interoperabilität bietet, die Lernkurve und den Einführungspfad optimiert und die idealerweise eine werkzeuggestützte Migration unterstützt.
An dieser Stelle kommt die Programmiersprache Carbon ins Spiel. Sie hat die Vorschläge zur Verbesserung von C++ aufgenommen und sie in seine Entwurfsziele integriert. Auf der Carbon-Website heißt es "Carbon ist im Grunde ein Nachfolgesprachenkonzept und kein Versuch, C++ schrittweise weiterzuentwickeln. Sie ist auf die Interoperabilität mit C++ sowie auf eine groß angelegte Übernahme und Migration für bestehende C++-Codebasen und Entwickler ausgelegt."
Manuel Rubio stellt Carbon auf Semaphore vor und stellt zur Diskussion, ob Carbon das Zeug hat, C++ in absehbarer Zeit abzulösen.