August 6th, 2022 8:00 PM MONTREAL, CANADA.
I have a summer discount going to reward my early backers and most passionate readers. I’m really grateful for the support. Who actually reads on the weekend anyways?
Hey Guys,
At the end of July, 222 as you know, Google announced its new software programming language Carbon. The headlines were about how Google's Carbon is trying to be be a better C++. While Rust is super popular I wonder if over-time Carbon could compete with it?
Frustrated by the slow evolution of the C++, Google engineers have launched a new “experimental” open source programming language, called Carbon, as a possible successor to the venerable but aging C++.
Think about it, the way BigTech molds programming languages really is for their own benefit: Just as Microsoft built (NewStack) Typescript to update JavaScript, and Kotlin was created to shore up weaknesses in Java, Carbon could serve as a successor language (9to5) to C++, one that offers an easy jumping off point for developers to a newer language that addresses modern development concepts such as memory safety and generics.
First Look (Video)
According to Google developer Chandler Carruth, Carbon could serve as a successor language to C++. The language was unveiled on July 19th, 2022.
Dubbed the experimental successor to C++, I’m very curious to see what this becomes.
What is C++ Used for?
C++ is a powerful general-purpose programming language. It can be used to develop operating systems, browsers, games, and so on. C++ supports different ways of programming like procedural, object-oriented, functional, and so on. This makes C++ powerful as well as flexible.
It powers search engines, VR applications, air travel, movie production, oh okay!
Operating Systems
Browsers
Search Engines
VR applications
Bro, that sounds a lot like Carbon could be useful for the Metaverse!
Long the language of choice for building performance-critical applications, C++ is plagued with a number of issues that hamper modern developers, Carruth explained on a GitHub page.
Dart was one of the programming languages launched by Google which was object-oriented and a web-based programming language. Dart programming language didn’t gain a huge response from the developers and hence it never got the position of mainstream programming language.
The Rust Foundation has a budget of $625,000 (generously donated by AWS, Huawei, and Google) to run a grants program for the Rust community in 2022. Microsoft also joined Rust’s Foundation. How BigTech are involved in how programming languages evolve is pretty significant.
But anything is better than bureaucracy. Apparently the evolution of C++ is presently and historically stymied by a bureaucratic committee process, oriented around standardization rather than design. Which can make it difficult to add new features. C++ has largely a sequestered development process, in which a select committee makes the important decisions, in a waterfall process that can take years.
Chandler is pretty low key. In that fateful early July, 2022 at the Cpp North convention in Toronto, as shared by Conor Hoekstra who was in attendance and documented the slides, Googler Chandler Carruth shared the vision for a new programming language called Carbon.
I could only find half a dozen articles on Carbon and you know copypastas. Do you guys have any insights on this?
You can Get Started.
This might be a good time to learn Carbon, as it could likely be in demand in the years to come. While Carbon began as a Google internal project, the development team ultimately wants to reduce contributions from Google, or any other single company, to less than 50% by the end of the year.
The Rust - Carbon Connection in the Future of Code
As usual Google says it ultimately want to hand the project off to an independent software foundation, where its development will be led by volunteers. Who knows who really pulls the strings in these Foundations? But I have my more deviant assumptions.
So who is Rust perhaps involved? Even as it becomes a favorite at Meta?
Many have dubbed Rust a C++ successor, however speaking at a recent event, Google Principal Software Engineer Chandler Carruth explained how the programming language that was initially a Mozilla product doesn’t have the same “bi-directional interoperability” as other tools, which introduces a type of ‘language barrier’ when ‘translating’ between different programming language.
Think about that.
Facebook parent Meta now encourages its engineers to use C++ and Rust programming languages for coding high-performance backend services. But for how much longer? Could there be another changing of the guard in a few years time?
As such, the newly announced Carbon should be interoperable with the popular C++ code, however for users looking to make the full switch, the migration should be fairly easy. This could potentially disrupt some adoption of Rust.
C++ has been struggling to improve and meet developers' needs for quite some time.
Carbon: In the Tooling section, we will go over the following to set up our environment:
Homebrew
Bazel
LLVM
Clone Carbon language
Run the Explorer
Succession Wars
I really quite like the “succession” metaphor in utility and natural selection of code.
Android developers well know that Kotlin serves as a successor to Java, just as iOS developers know Swift is the successor to Objective-C. TypeScript, from Microsoft, has thoroughly enhanced JavaScript, while remaining comfortable to use and able to be “transpiled” back to JavaScript.
Carbon < Rust > C++
Rust felt like a darling (AIM) of 2021 and especially 2020, but could its stock be fading as we head over into 2023?
Rust has been ranked as the most liked language by its users for two years in surveys but some programmers say otherwise. What could be Google’s motive for disrupting Rust’s momentum and all the Meta and Microsoft adoption it is seeing? Oh I wonder….
Down with those ideological “Rusticans!” They are getting too popular! We at Google who don’t know how to launch products, protests, we protest!
I’m joking. This could go any number of ways, but be aware software is always eating the world and that means software is always evolving.
I have a summer discount going to reward my early backers and most passionate readers. I’m really grateful for the support. Who actually writes on the weekend anyways? I do.
Interested in debating the future of Rust vs. Carbon? There’s a Reddit thread for that.