DEV Community

Tip Season
Tip Season

Posted on

Will Carbon language replace C++ fully in the future ?

Reading through this post on Carbon vs Rust
Rust is definitely a well established language as a potential successor to C++. But then Carbon language is announced with a goal to become a successor to C++.

Going through some of the basics of Carbon, syntax wise it feels similar to Rust but Carbon has different goals compared to C++ in terms of interop.

If any one else has tried Carbon,
Do you think Carbon language will fully replace C++ in the future if all things go as planned ?

Top comments (12)

Collapse
 
defman profile image
Sergey Kislyakov

I won't be surprised if Google kills it in a year. And I doubt C++ will be replaced by ANY language. Rust and Zig might cut a piece of the cake from C++, but won't replace it fully.

Collapse
 
tipseason profile image
Tip Season

Got it. Thanks for the insights

Collapse
 
cicirello profile image
Vincent A. Cicirello

I'm not familiar with Carbon. But despite that, this is an easy one to answer. No. Nothing will fully replace C++ in the future. There are at least 5 programming languages that I see remaining widely used indefinitely: C, C++, Java, JavaScript, and Python. I alphabetized them to avoid emphasizing any over the others. There might be others I'd add to this list if I thought about it more. These are also not my 5 favorite languages. For example, I dislike JavaScript but it isn't going anywhere in the foreseeable future. And C++ was once my preferred language, but anything I would have used it for in the past, today I'd turn to Java. But that is just me, I personally replaced C++ with something else, but C++ will continue to stick around.

Java won't be replaced by Kotlin or any other JVM language, unless the JDK maintainers decide to migrate the JVM to a KVM. This is unlikely. And even if that happened, there are a ton of widely used Java libraries and with full-interoperability of Java and Kotlin and some other JVM languages, such libraries will remain relevant.

C++ didn't replace C, and others that aimed to also did not. C is still widely used in embedded systems, and some other domains. And C is at the heart of some other widely used languages, such as Python (e.g. CPython).

As a faculty member, I often talk to recruiters from industry about what they are looking for from graduating students. Much of what they say is more often the soft-skills (e.g. communication), even more so than tech skills. But the 2 programming languages I hear most are Java and C++. Rarely both from the same company. But in most cases they are fine with the other of the 2 for entry level if the student is motivated to learn the other, and if their communications and team-work and other soft skills are strong.

Collapse
 
tipseason profile image
Tip Season

Great insights. Thanks for detailed answer

Collapse
 
syeo66 profile image
Red Ochsenbein (he/him)

C++ did not replace C, in the same way Carbon will not replace C++... and maybe Carbon will not even take off. We don't know

Collapse
 
tipseason profile image
Tip Season

Let’s wait and see

Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

Reading other comments I'll approach this question from a different point of view
Let's imagine that we actually want to replace C++ with Carbon and see what we'd need to reach that target.

Google and Microsoft are major users of and contributors of C++, which is used mainly to develop Operating Systems (partially), Browsers, Games, embedded systems and critical building blocks of large systems. It also can be used for -partial- Android App Development using the Android NDK and much more.

Hence we'll need to re-build from scratch tones of tools in Carbon first; From Unreal Engine to Google Chrome or MS Edge, also provide enough frameworks, libs and tools to cover the enormous ecosystem that has been built around C++ all those years.
Then we just need to convince everyone (an absolute majority will suffice) using C++ that learning Carbon is a good choice and that they should ditch apart the experience they already have in C++'s core API to use something new which is -allegedly- better.

TL;DR: That's -most probably- not gonna happen, but we'll see how it evolves. I honestly think that even Google isn't replacing C++ for Carbon in it's systems, at least for a long time.

Collapse
 
tipseason profile image
Tip Season

Certainly true and thanks for the detailed answer. Not supporting yes or no but am just curious - If major companies start adapting Carbon convincing to learn should not be a blocker right ?

Collapse
 
nfrankel profile image
Nicolas Frankel

No

Collapse
 
tipseason profile image
Tip Season

Got it

Collapse
 
delta456 profile image
Swastik Baranwal

I mean C++ will still widely be used regardless of how Carbon is gonna get used in the future. Like people still use Java when Kotlin is made to "replace" it.

Collapse
 
tipseason profile image
Tip Season

Got it