1 min

The Carbon Language was presented by Google software engineer Chandler Carruth at Toronto’s C++ North conference this week. Chandler described the programming language as an “experimental successor to C++“, sparking much interest in the C++ community.

Given the interest the community has shown in the keynote, the conference organizers announced that they would upload the recording more quickly than usual.

C++ is the dominant language for performance-critical software. Carbon’s developers note that incrementally upgrading C++ is exceedingly difficult due to its history and technical debt.

One option is moving to another language, such as Rust, Kotlin, Swift, or Go. But doing so is difficult, and these languages may have a performance cost. The Carbon Language seeks to preserve bidirectional compatibility, match the performance of C++, and have a reasonable learning curve for C++ programmers.

Additionally, the developers promise some level of source-to-source translation for C++ code. Carbon works with C++ code to simplify migrations. The Carbon toolchain will also support the C++ compiler. Although the analogy isn’t perfect, the project has similarities to TypeScript for JavaScript developers and Kotlin for Java developers.

C++ has crutches

Given that C++ is a fork of C and that C is a 50-year-old language, it’s unsurprising that the language has a significant amount of challenges. The Carbon team asserts that, over time, C++ designers added features rather than changing them, leading to complex interactions. The Carbon Language aims to be a clean slate.

Tip: Outdated systems and lack of IT knowledge are a ‘toxic cocktail’