- Published onAugust 2, 2022
- In Developers Corner
Rust has been ranked as the most liked language by its users for two years in surveys but programmers say otherwise
Listen to this story
Google engineers recently introduced ‘Carbon’, an open source programming language hailed as the possible successor of C++. With the new ‘experimental’ language being the talk of the internet, conversations around why ‘Rust’ didn’t become the official successor of C++ have also surfaced.
With its own community of people called ‘Rustaceans’ who use, contribute and are interested in the development of the language, Rust is a statically-typed programming language for performance and safety, especially safe concurrency and memory management. Its syntax is similar to that of C++. The open-source project was originally developed at Mozilla Research. In 2021, the Rust Foundation took the torch and drove the development of the language.
THE BELAMY
Sign up for your weekly dose of what's up in emerging technology.
In his presentation at CPP North, Google engineer Chandler Carruth advised those using ‘Rust’ to continue using it. Carbon is for developers with large codebases in C++, which are difficult to convert into Rust. Carbon is specifically what Carruth called a ‘successor language’, built atop an already existing ecosystem, C++ in this case.
According to a StackOverflow survey, Rust is considered to be one of the fastest-growing programming languages and has been ranked as the most liked language by its users. But, programmers say otherwise.
Download our Mobile App
A good language should be safe, fast and easy to program. But is Rust?
Rust is difficult. It has a complex syntax and a steep learning curve. It is designed to uniquely solve some very challenging problems in programming. However, as a beginner, using Cuda or MPI on Rust is not very simple compared to the other options like Swift and Go. Moreover, it is slow. Rust is a snail compared to other languages. Even for small projects, the compile times are painfully long, and runtime measurements show that Rust is less efficient than the C programs.
Imagine rewriting C libraries that have had decades of scrutiny applied only to introduce new bugs. Bugs in code are programmers’ nightmare. While it does save developers from some mistakes, it does not stop them from unintentionally writing bugs. Another issue are the constant warnings appearing over parentheses, especially over if statements and while loops.
Rust is therefore a lot more complicated and inefficient and may soon be superseded by said tooling.
Not so unpopular after all?
Even though first-hand experiences tell a different story, most big techs are already using Rust, while others plan to do so. Recently, Rust joined Meta’s panel of officially supported server-side programming languages. The list previously included C++, Hack and Python.
“There’s a rapidly increasing Rust footprint in our products and services, and we’re committing to Rust long-term and welcome early adopters”, says Eric Garcia, a Meta software engineering manager.
Dropbox uses Rust for some mission-critical bits of its programming. Other internet companies would probably choose Rust when they need good security, multi-threading, and to reduce the amount of hardware. For example, a highly efficient web service written in Rust can save millions of dollars in hardware for a company running thousands of servers.
Google also plans to use Rust in the Linux kernel after bringing support for the systems programming language Rust to Android. To reiterate, the aim is to reduce security flaws. Meanwhile, Microsoft too has turned to Rust to reduce memory-related bugs in Windows components. Currently, there are 25 repositories on GitHub of the public work Microsoft is doing with Rust. Most of them have occasional commits, which is minuscule compared to 317 C++ repositories.
Facebook has also strengthened ties with Rust by joining the Rust Foundation, an organisation established in 2021 to make Rust “a mainstream language of choice for systems programming and beyond”.
In 2020, Linux kernel developers proposed rewriting new Linux kernel code in Rust. The idea was to add new code in Rust to the originally written Kernel in C. However, this idea is still in the development stage, described as experimental.
In the future, Rust could become a top favourite language for the Internet of Things (IoT) devices with tiny processors and little RAM but need a high level of security. Moreover, considering its relationship with big techs, it would probably become a favourite language for internet companies that need to offer web services to millions of users.
More Great AIM Stories
Top 7 Java Frameworks For Web Applications
Our Upcoming Conferences
16-17th Mar, 2023 | Bangalore
Rising 2023 | Women in Tech Conference
27-28th Apr, 2023 I Bangalore
Data Engineering Summit (DES) 2023
27-28th Apr, 2023
23 Jun, 2023 | Bangalore
MachineCon India 2023 [AI100 Awards]
21 Jul, 2023 | New York
MachineCon USA 2023 [AI100 Awards]
3 Ways to Join our Community
Telegram group
Discover special offers, top stories, upcoming events, and more.
Discord Server
Stay Connected with a larger ecosystem of data science and ML Professionals
Subscribe to our Daily newsletter
Get our daily awesome stories & videos in your inbox
AIM TOP STORIES
The rise of surveillance start-ups in India
As part of their pilot program, Staqu observes prison fights in UP.
Is Meta’s System Card the next step to safer algorithms?
System Cards were developed as a hybrid between common XAI approaches of model cards and datasheets that explain how models are built and the data used to train them.
A guide to interpretable association rule mining using PyCaret
Making association rule mining interpretable and explainable plays an important role in decision making. In this article, we will discuss association rule mining and we will do a hands-on implementation of this technique using the PyCaret library.
How AI is revolutionising contract management
Legal teams may remain on top of contracts with the help of contract AI by setting up automated alerts and notifications.
A chance meeting during morning walk to Beating the Retreat ceremony: Story of this drone tech startup
Botlab Dynamics used swarm technology to put up an amazing show. Dr Ahlawat says that what a single drone can do, multiple drones can do better.
Online tools to create mind-blowing AI art
AI art can be created autonomously by AI systems or created in collaboration with humans and an AI system.
Give an edge to your career with senior management programme in business analytics by IIM-Calcutta
This programme’s innovative pedagogical methods will equip participants with superior analytics strategies and frameworks.
Solving the memory bottleneck problem of TinyML
MIT and IBM have jointly introduced MCUNetV2, a deep learning architecture that can adjust memory bandwidth to the limits of the microcontrollers.
AIM Long Reads: Best Indian cities to launch AI startups
India has the third highest number of incubators (250+) in the world.
Behind how the document automation startup Klarity works
“Although ‘full automation’ is still in its infancy, our solution is able to automate over 85% of documents with much higher accuracy when compared to existing solutions.”
FAQs
Why is Rust a great programming language? ›
This system programming language facilitates designing and writing computer programs that allow smooth integration of computer hardware and software. The main purpose of using Rust is enhanced safety, speed, and concurrency, or the ability to run multiple computations parallelly.
Is Rust a good general purpose language? ›Rust is a multi-paradigm, high-level, general-purpose programming language. Rust emphasizes performance, type safety, and concurrency.
Why is Rust so hard to learn? ›Rust is difficult. It has a complex syntax and a steep learning curve. It is designed to uniquely solve some very challenging problems in programming. However, as a beginner, using Cuda or MPI on Rust is not very simple compared to the other options like Swift and Go.
Is Rust the future of programming? ›Many seasoned programmers have mentioned Rust as a serious contender for being the next successor of languages used in web programming. It's a stable language that's relatively new, and it already supports many modern features.
Does Google use Rust? ›Google has begun using Rust in settings where memory safety and performance are key considerations, including in key Android systems. The Rust Core Team recently completed its work to build a new home for Rust: The Rust Foundation.
Why do people love Rust? ›In programming, Rust is one of the most loved languages. It is a programming language focused on memory safety, protection, high performance during the processing of large amounts of data, concurrency and a highly efficient compiler.
Is Rust the best programming language ever? ›Many consider Rust the best language for building tools suited for today's architectures. The web browser is a good example of an application that requires massive scalability, so it's no surprise that Rust was created by Mozilla, the not-for-profit corporation that developed Firefox.
Why is Rust better than Python? ›Speed is directly related to the memory and performance efficiency of the program. Since Rust is more memory and performance efficient, Rust programs have a higher execution speed than Python programs.
Why is Rust toxic? ›Rust isn't inherently harmful to human beings. In particular, touching rust or getting it on your skin isn't associated with any health risks. While you can get tetanus from a wound caused by a rusty object, it's not the rust that causes tetanus. Instead, it's caused by a type of bacteria that may be on the object.
Why is Rust better than C? ›However, Rust programs also optimize quite well, sometimes better than C. While C is good for writing minimal code on byte-by-byte pointer-by-pointer level, Rust has powerful features for efficiently combining multiple functions or even whole libraries together.