this post was submitted on 03 Sep 2024
436 points (97.8% liked)

Linux

47283 readers
1683 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Linux people doing Linux things, it seems.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 73 points 1 week ago* (last edited 1 week ago) (14 children)

Maybe it’s a good idea, but it’s understandable that some people are reluctant.

I understand that position. I also understand how the words and phrases that the C community has used to communicate with the Rust community seems to be completely dismissive, not just reluctant.

I quoted what I did explicitly because of how a statement like that comes off to the person it's aimed at. It doesn't make them feel like they're on an even footing working on the same project with the overall goal of it becoming better.

memory safety is more akin to changing languages from English to Esperanto because it has gender neutral pronouns.

I mean... not at all? Memory safety is huge for cybersecurity, buffer overflows and the like are common attack surfaces. C requires you to have deep knowledge of safe memory management practices and even then you can end up with memory issues. Rust was developed to avoid such issues entirely. I understand the reluctance but it feels to me like arguing "we should just stick with COBOL because it works."

[–] [email protected] 3 points 1 week ago (5 children)

I understand the reluctance but it feels to me like arguing “we should just stick with COBOL because it works.”

For those depending on COBOL code that does the job and has been doing it just well for a few decades, there are approximately zero good reasons to not stick with it.

[–] [email protected] 12 points 1 week ago (4 children)
  1. Eventually all the people who know and are good at cobol will die.
  2. A while before that happens, the people who know it will continually demand more money for their rare skills.
  3. Eventually, the cobol systems out there will need to interface new systems in some way it wasn't designed to and it'll be more expensive to shoehorn the remote system than to let the ancient beast retire.
[–] [email protected] 1 points 1 week ago (1 children)

Even if, we are talking about the Linux kernel. Our entire ecosystem builds upon C. People choosing C for new projects because it is the common denominator.

If Rust should be adopted in the kernel faster, patches should be send which comment how each line addresses issues of memory management solved and elaborations for rust specific patterns unfamiliar to a C dev.

Lurkers will pick up Rust that way as well.

Each Rust dev had to pick it up and therefore should be able to enable other - probably more experienced - Linux kernel hacker to provide reviewable patches.

It shouldn't be the other way around, else you are just stepping on the efforts the other human provided to that project.

[–] [email protected] 1 points 1 week ago (1 children)

I'm not against Rust. I'd like to see something less dangerous with memory than C, but I don't think it's time yet for the kernel to leave C.

It's pretty clean, stable, it's working well at the moment and the C language (or variants of it) is/are still actively used everywhere. I think the kernel universally going Rust will be a long road of everything under the sun going there first before it's ported in earnest.

[–] nous 2 points 1 week ago (1 children)

The goal ATM is simply to allow people to write new drivers in rust, not convert the whole kernel to rust. It will be a very long time, before more core parts would be allowed to be written in rust let alone rewriting any existing core kernel code. Which is all fine as new drivers are a large part where bugs are added - older parts have had a long time for bugs to be found and fixed and so it is far less important to need to rewrite them.

[–] [email protected] 1 points 1 week ago

Yes there is never old code with bugs that have been sitting there for decades.

load more comments (2 replies)
load more comments (2 replies)
load more comments (10 replies)