
| Carbon | |
| Logo Alt: | A dark-gray circle with a white sans-serif letter "C" in the middle |
| Logo Caption: | Logo on Carbon's GitHub organization |
| Family: | C |
| Designer: | |
| Typing: | Static, nominative, partly inferred |
| Influenced By: | C++, Rust, Zig, Haskell, Kotlin, Swift |
| Programming Language: | C++ |
| License: | Apache-2.0-with-LLVM-Exception |
| File Ext: | .carbon |
Carbon is an experimental programming language designed for interoperability with C++.[1] The project is open-source and was started at Google. Google's engineer Chandler Carruth first introduced Carbon at the CppNorth conference in Toronto in July 2022. He stated that Carbon was created to be a C++ successor. The language is expected to have an experimental MVP version 0.1 in late 2026 at the earliest and a production-ready version 1.0 after 2028.
The language intends to fix several perceived shortcomings of C++ but otherwise provides a similar feature set.The main goals of the language are readability and "bi-directional interoperability" (which allows the user to include C++ code in the Carbon file), as opposed to using a new language like Rust, that, whilst being influenced by C++, is not two-way compatible with C++ programs. Changes to the language will be decided by the Carbon leads. It aims to build on top of the C++ ecosystem the way in an analogous role to TypeScript to JavaScript, or Kotlin to Java.[1]
Carbon's documents, design, implementation, and related tools are hosted on GitHub under the Apache-2.0 license with LLVM Exceptions.[2]
The following shows how a program might be written in Carbon and C++:[3]