this post was submitted on 13 Apr 2024
729 points (95.8% liked)

linuxmemes

21048 readers
1199 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.

  • Please report posts and comments that break these rules!

    founded 1 year ago
    MODERATORS
     
    you are viewing a single comment's thread
    view the rest of the comments
    [–] [email protected] 136 points 6 months ago (2 children)

    There is no C++ allowed in the Linux kernel and Linus has gone on several major rants about how terrible a language it is.

    [–] [email protected] 52 points 6 months ago (4 children)
    [–] [email protected] 85 points 6 months ago (1 children)

    There’s assembly and makefiles too

    Less of a joke answer, there has been work to allow Rust bindings for drivers.

    [–] [email protected] 26 points 6 months ago
    [–] [email protected] 84 points 6 months ago (2 children)

    According to the github analysis, the kernel repository is:

    • C 98.3%
    • Assembly 0.7%
    • Shell 0.4%
    • Makefile 0.2%
    • Python 0.2%
    • Perl 0.1%
    • Other 0.1%

    So yeah, its basically all C, plus a tiny bit of assembly for very low level bootstrapping and some helper scripts.

    [–] [email protected] 30 points 6 months ago (1 children)

    Yeah but a lot of that C code has inline assembly so it's more like 5-10% asm.

    [–] [email protected] 13 points 6 months ago (1 children)

    Inline assembly is such a shit practice. But c++ bad.

    [–] [email protected] 11 points 6 months ago (1 children)

    Sometimes you can't get around it though.

    [–] [email protected] 1 points 6 months ago

    Afaik MSVC forbids it and it’s one of the very few nice things about c++ on windows.

    If you need to write assembly don’t fucking do it in a cpp file. Create a header, an assembly file, assemble it and link to it.

    [–] [email protected] 1 points 6 months ago (2 children)
    [–] [email protected] 3 points 6 months ago

    No VB6 either 🤷‍♂️

    How can one write a kernel without using VB6 at all?

    [–] [email protected] 1 points 6 months ago

    Yeah, indeed, why not 🤔...

    [–] [email protected] 17 points 6 months ago (1 children)

    Lots of core UNIX and Linux projects are. C++ is not liked by a lot of low level FOSS community. I think Rust is going to get further into these areas. I know C++ well but prefer C. I know plenty of others who feel the same.

    [–] [email protected] 3 points 6 months ago (1 children)

    I've read that they are writing parts of the kernel in Rust

    [–] [email protected] 4 points 6 months ago (2 children)

    Yes, I think Rust is a better C++ and will replace it in many places. Though all three will be around for ever to be honest.

    [–] [email protected] 2 points 6 months ago (1 children)

    Yes, first Rust code was released in 6.6 I think and MS also started implementing Rust code in the Windows kernel.

    [–] [email protected] 3 points 6 months ago (1 children)

    Rust is certainly interesting. I think it's the C++ we need.

    [–] [email protected] 1 points 6 months ago

    Exactly my thoughts 👍.

    [–] [email protected] 1 points 5 months ago

    Personally I find the syntax unreadable.

    [–] [email protected] 1 points 6 months ago (1 children)
    [–] [email protected] 4 points 6 months ago

    Why do I suddenly feel a meme coming on? 😅