I heard a PeerTuber I follow talk about controversy around “Rust” as a dangerous cult or something, but that she thinks people should put aside their “petty grievances” and focus more on what good the project will do for Linux. I’m out of the loop, but I think Rust is a programming language, right? Anyone know what this whole thing about a cult is? I want to be filled in on it, because it seems important.
C developer here, so I think to help you all out a little bit on understanding Rust scenario. The problem is that a lot of us prefer to have single language development so that we’re not forced to learn about Rust language or other languages.
Second problem is BIDIRECTIONAL FFI, because when we share code in C, almost every language can use and extend C code, but it’s not true for Rust code however, it’s unidirectional. Other language can’t easily extend Rust code nor can it use Rust’s libraries, but Rust could use C code with ease. I know people would say, “But Rust could expose all of those things.” Well, LLVM which is written in C++ could’ve done the same, but they didn’t, we don’t have full access of LLVM code in C and we can’t expect that in Rust code either.
Rust does have a reputation of being a prosecution complex in some spaces where I did get nagged on by rust folks to rewrite my project in Rust. I told them no and that I could defend my choices for memory safety and reliability by adhering to MISRA-C standard and using Frama-C for verification.
I don’t hate on Rust, but I just want people to understand that there are wider scopes to consider in a larger project like Linux Kernel and that it can hurt us more if we start having more than 1 language in a already complicated project like Linux Kernel. Rust already have it’s own operating system, why not work on that and extend it to compete with Linux Kernel? It’s called Redox OS: https://redox-os.org/
I can see that Rust can make a lot of positive change to the Linux community, just that we need to treat it as a tool just like C, C++, and every other language.
So, rust can do a lot of the same stuff as C and its various derivatives (further referred to as just C for simplicity here) Increasingly it’s gained prominence doing stuff that used to be only done in C. A lot of the core utilities and Linux kernel are written in C. Now, there has been some folks writing contributions to the Linux kernel in rust, and Ubuntu has done some work to rewrite some of the core utilities in rust.
I’m not privy to the deep lore (mailing list drama) but, my understanding is that there are a lot of people throughly opposed to using rust for important low level stuff in Linux and apparently some people who want to rewrite everything in rust.
I suspect the reality is that… as rust has gained prominence in other areas, some people have developed a lot of experience with it and are more comfortable with it than they are with C. They have thus advocated for using rust to contribute to things. People who are more comfortable with C on the other hand are frustrated when they try to parse a language they’re not as familiar with. And thus, many debates have raged over the qualities of one over the other, and salt has been scattered.


