HomeENTERTAINMENTthe programming language that will 'outcome' C++ • ENTER.CO

the programming language that will ‘outcome’ C++ • ENTER.CO

The latest programming salary reports prove the popularity of C++, at least when it comes to looking for new specialized talent. However, during a conference at CPP North (an event held in Canada to bring together C++ specialists) Chandler Carruth, a Google engineer, presented Carbon: an experimental successor to C++.

What is Carbon?

Carbon is a new programming language that’s being developed primarily by people inside Google, but it’s essentially an open source project and is actually on GitHub, as well as with an active community on Discord. It also wouldn’t be the first time that Google has been responsible for developing a language (Go is the best example of a Google project that became an extremely popular tool).

How is Carbon different from C++?

Carbon’s main task is to create ‘performance critical software’, but more importantly its goal is to make it fully operational with existing C++ language and code. This is because the ultimate goal of C++ is for this language to serve as an alternative to aging C++ so that developers can migrate here if they wish.

In addition to this, here are some other elements that stood out from Carbon:

– Introductory keywords and simple grammar

– Function input parameters are read-only values

– Use expressions to name types

– Import API via its package name

– single inheritance; classes are final by default

– Strong generics and proven definition

But wasn’t Rust the new C++?

Yes but no. Although many claim that Rust was the next step in C++, it has a huge problem: migration is very complicated. Unlike Java and Kotlin, converting C++ projects to Rust is not a bi-directional language. Which Carbon does (in theory).

It means that Carbon is perfect

No way. In fact, many have pointed out that it has some limitations that can make it one of those tools that it is better not to touch. The biggest, without a doubt, is that for now it is limited to google standardshey doesn’t use the C-style syntax… which means it’s not really fully supported.

Images: Screenshot

Must Read