Linus Torvalds Speaks on the the divide between Rust and C Linux developers an the future Linux. Will things like fragmentation among the open source community hurt the Linux Kernel? We’ll listen to the Creator of Linux.

For the full key note, checkout: Keynote: Linus Torvalds in Conversation with Dirk Hohndel

  •  toastal   ( @toastal@lemmy.ml ) 
    link
    fedilink
    English
    16 hours ago

    If you believe in ADTs, limiting mutation, & a type system that goes beyond Rust’s affine types + lack of refinements (including a interleaved proof system), you could be writing kernel code in ATS which compiles to C.

  • You can’t improve and break silence without discussing and making changes. The existing maintainers won’t live forever, having Rust in the Kernel is a bet on the future. Linus wouldn’t have adopted and accepted Rust, if he wasn’t thinking its worth it. And looks like it was already worth it.

      • Do you have something against it? People hate on it like it’s a fad or whatever. But, the people who like it, LOVE it.

        Rust is the most admired language, more than 80% of developers that use it want to use it again next year. 

        https://survey.stackoverflow.co/2023/#overview

        Rust is on its seventh year as the most loved language with 87% of developers saying they want to continue using it.

        https://survey.stackoverflow.co/2022/#overview

        8 years in a row. I can understand the perspective of someone who spent years honing their craft in C/C++ and not wanting to learn a new language. But, the Harassment of the “Rust in Linux Lead” is ridiculous. I’m not saying you are harassing. But, saying it’s a tech bro thing is just negative and doesn’t do justice to how many devs just like rust.

        •  x00za   ( @x00za@lemmy.dbzer0.com ) 
          link
          fedilink
          English
          153 minutes ago

          I only have something against the syntax, but nothing against anything else about it, nor is my comment meant as a negative against the language. What I referred to was simply about how that stupid sentence is not a good comment and completely personal opinion. I am sure a lot of programming languages would have gotten the same label at one point in time. And many times they have been superseded by the next big thing.

    • The existing maintainers won’t live forever, having Rust in the Kernel is a bet on the future.

      You’re drastically reducing your talent base by requiring membership in two groups of experts. Well done.

      The comma splice gives it away, but you’re new at organizing groups and practicing set theory, aren’t you?

      • No. That does not mean they have to program in both languages. If the programmer only understand one language (which would be a shame), then they only need to program in their field. This increases the talent base, not reduces it. C programmers do not need to be a Rust expert, so what in the world are you saying there? They just need to cooperate!

  • I took notes for the benefit of anyone who doesn’t like their info in video form. My attempt to summarize what Linus says:

    He enjoys the arguments, it’s nice that Rust has livened up the discussion. It shows that people care.

    It’s more contentious than it should be sometimes with religious overtones reminiscent of vi versus emacs. Some like it, some don’t, and that’s okay.

    Too early to see if Rust in the kernel ultimately fails or succeeds, that will take time, but he’s optimistic about it.

    The kernel is not normal C. They use tools that enforce rules that are not part of the language, including memory safety infrastructure. This has been incrementally added over a long time, which is what allowed people to do it without the kind of outcry that the Rust efforts produce by trying to change things more quickly.

    There aren’t many languages that can deal with system issues, so unless you want to use assembler it’s going to be C, C-like, or Rust. So probably there will be some systems other than Linux that do use Rust.

    If you make your own he’s looking forward to seeing it.

    •  mac   ( @mac@lemm.ee ) 
      link
      fedilink
      3
      edit-2
      5 hours ago

      I also dont like videos for this stuff. Summarized using kagi’s universal summarizer, sharing here:

      • The integration of Rust into the Linux kernel has been a contentious topic, with some long-term maintainers resisting the changes required for memory-safe Rust code.
      • The debate over Rust vs. C in the Linux kernel has taken on “almost religious overtones” in certain areas, reflecting the differing design philosophies and expectations.
      • Linus Torvalds sees the Rust discussion as a positive thing, as it has “livened up some of the discussions” and shows how much people care about the kernel.
      • Not everyone in the kernel community understands everything about the kernel, and specialization is common - some focus on drivers, others on architectures, filesystems, etc. The same is true for Rust and C.
      • Linus does not think the Rust integration is a failure, as it’s still early, and even if it were, that’s how the community learns and improves.
      • The challenge is that Rust’s memory-safe architecture requires changes to the existing infrastructure, which some long-time maintainers, like the DRM subsystem people, are resistant to.
      • The Linux kernel has developed a lot of its own memory safety infrastructure over time for C, which has allowed incremental changes, whereas the Rust changes are more “in your face.”
      • Despite the struggles with Rust integration, Linus believes Linux is so widely used and entrenched that alternative “bottom-up grown-up from the start Rust kernels” are unlikely to displace it.
      • Linus sees the embedded/IoT space as an area where alternative kernels built around different languages like Rust may emerge, but does not see Linux losing its dominance as a general-purpose OS.
      • Overall, Linus views the Rust debate as a positive sign of the community’s passion and an opportunity to learn, even if the integration process is challenging.
    • FWIW, it’s a 9 min video and doesn’t contain anything earth shattering or easily summarized. Basically there is some friction between C and Rust devs, and Linus doesn’t think that it’s such a bad thing (there has be interesting discussion) and it’s way too early to call Rust in the kernel a failure.