Menu
Carbon language aims to be a better C++

Carbon language aims to be a better C++

Experimental successor to C++ strives for C++ performance and compatibility while avoiding its technical debt and ‘extreme difficulty’ to improve.

Comments
Credit: Dreamstime

Is it time for a successor to the stalwart C++ language? A group of developers at Google and other organisations believe it is.

The group is behind an experimental language called Carbon, which offers interoperability with C++ while overcoming purported difficulties in improving the legacy language. 

Carbon attempts to overcome these obstacles by starting over with solid language foundations such as modern generics, a simple syntax, and modular code organisation while avoiding the “decades of technical debt” of C or C++. However, they emphasise that Carbon is not ready for use.

The developers of Carbon acknowledge that C++ remains the dominant programming language for building performance-critical software and has massive and growing code bases and investments. Carbon presents a successor approach rather than an evolution and is intended to enable migration for existing C++ code bases and C++ developers.

Carbon was the subject of a presentation last week at the CppNorth conference in Toronto. Resources for Carbon can be accessed from the project’s GitHub repo. Project developers list the following requirements for a C++ successor, stressing that their approach can be built on top of the C++ ecosystem:

  • Matching C++ in performance
  • Seamless, bidirectional interoperability with C++
  • A gentle learning curve
  • Comparable expressivity
  • Scalable migration

Carbon is intended to be as analogous to C++ as TypeScript is to JavaScript and Kotlin is to Java. The designers intend for Carbon to support performance-critical software, software and language evolution, and have code that is safe and easy to read and write. 

Practical safety and testing mechanisms and fast and scalable development also are goals. Explicit non-goals include having a stable ABI (application binary interface) for the entire language and library and perfect backward or forward compatibility.

At present, there is no working Carbon compiler or toolchain but developers can examine a demo interpreter for the language. Developers can participate in a design discussion forum on GitHub. An open source project structure, governance model, and evolution process also are core aspects of Carbon.


Follow Us

Join the newsletter!

Or

Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.

Tags software

Events

ARN Innovation Awards 2022

Innovation Awards is the market-leading awards program for celebrating ecosystem innovation and excellence across the technology sector in Australia.

EDGE 2022

EDGE is the leading technology conference for business leaders in Australia and New Zealand, built on the foundations of collaboration, education and advancement.

Brand Post

Channel Roadmap

The Channel Roadmap is a bespoke content hub housing strategic priorities from technology vendors for 2022 and beyond, partners can find the guidance on the key technologies and markets to pursue, to help build a blueprint for future success.

Show Comments