Google

Google Carbon Code Is Trying To Be A Better C++

Google Carbon Code

Google Launches Carbon, a Research Replacement for C++ Carbon, Google’s newest programming language, was unveiled today as an experimental successor to C++. Frustrated by the slow evolution of C++, Google engineers have launched Carbon, a new “experimental” open source programming language that could replace the venerable but aging C++. Carbon could serve as a successor language to C++, offering an easy jumping point for developers to a newer language that addresses modern development concepts such as memory safety and generics, just as Microsoft built Typescript to update JavaScript and Kotlinto to shore up weaknesses in Java.

Wither C++

It has accumulated decades of technical debt, bringing with it many of the antiquated practices of the language’s forefather, C. Carruth charged that C++ defenders prioritize backward compatibility in order to continue supporting widely used projects like Linux and its package management ecosystem.

The evolution of the language is also stymied by a bureaucratic committee process that is focused on standardization rather than design. This can make adding new features difficult. C++’s development process is largely sequestered, with a select committee making important decisions in a waterfall process that can take years.

“The committee structure is designed to ensure nation and company representation, rather than building an inclusive and welcoming team and community of experts and people actively participating.”

“Rather than building an inclusive and welcoming team and community of experts and people actively contributing to the language, the committee structure is designed to ensure representation of nations and companies,” Carruth wrote. “Access to the committee and standard is limited and costly; attendance is required in order to have a voice, and decisions are made by live votes of those present.”

Carruth wishes to construct Carbon in a more open, community-led environment. The project will be kept up to date on GitHub and discussed on Discord. While Carbon began as an internal Google project, the development team hopes to reduce contributions from Google, or any other single company, to less than 50% by the end of the year. They eventually hope to hand over the project to an independent software foundation, where it will be developed by volunteers.

Chandler Carruth, a Google engineer, debuted the language this week at the CPP North C++ conference in Toronto. Carruth explained that while C++ has long been the language of choice for developing performance-critical applications, it is plagued by a number of issues that impede modern developers.

Google has developed a number of programming languages over the years, some of which have become more popular and prominent than others. For example, Golang (or simply Go) was created to improve the development of servers and distributed systems and has since gained popularity. Meanwhile, the Dart programming language, which was designed as an alternative to JavaScript, did not gain widespread popularity until the release of Flutter.

Googler Chandler Carruth shared the vision for a new programming language called Carbon today at the Cpp North convention in Toronto, according to Conor Hoekstra, who was in attendance and documented the slides. Carruth began by demonstrating how many of today’s most popular programming languages have successors that allow developers to be productive quickly while also taking advantage of modern language design.

Android developers are well aware that Kotlin is the successor to Java, just as iOS developers are aware that Swift is the successor to Objective-C. Microsoft’s TypeScript has greatly enhanced JavaScript while remaining user-friendly and capable of being “transpiled” back to JavaScript. C++, which is widely used at Google, is a sort of spiritual successor to Java.

What exactly is Google Carbon Code?

To address the shortcomings of C++, Google engineers created the Carbon programming language.

Many existing languages, such as Golang and Rust, already mirror the performance of C++ without its flaws. Unfortunately, the migration of existing C++ codebases is hampered by these languages.

Carbon aspires to be TypeScript for JavaScript and Kotlin for Java. It is not a replacement, but rather a successor language designed to work with C++. It seeks widespread adoption and migration of existing codebases and developers.

Carbon Characteristics

C++ interoperability, modern generics, and memory safety are some of Carbon’s key features.

Interoperability With C++

Carbon’s goal is to provide a gradual learning curve for C++ developers by using a standard, consistent set of language constructs.

Within an application, you can also migrate a single C++ library to Carbon or add new Carbon code on top of existing C++ code.

Carbon’s Roadmap Shows Long-Term Planning

According to the Carbon roadmap, Google will make the experiment public by the end of 2022 with the release of a core working version (0.1). They intend to release a 0.2 version in 2023, followed by a full 1.0 release in 2024-2025. It remains to be seen whether Google will be able to replicate the success of their other languages, Golang and Kotlin.

Related Articles

Leave a Reply

Your email address will not be published.

Back to top button