this post was submitted on 13 Apr 2024
731 points (95.9% liked)

linuxmemes

24570 readers
3492 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 users for any reason. This includes using blanket terms, like "every user of thing".
  • Don't get baited into back-and-forth insults. We are not animals.
  • 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.
  • 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, no politics, no trolling or ragebaiting.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
  • 5. πŸ‡¬πŸ‡§ Language/язык/Sprache
  • This is primarily an English-speaking community. πŸ‡¬πŸ‡§πŸ‡¦πŸ‡ΊπŸ‡ΊπŸ‡Έ
  • Comments written in other languages are allowed.
  • The substance of a post should be comprehensible for people who only speak English.
  • Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
  • 6. (NEW!) Regarding public figuresWe all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.
  • Keep discussions polite and free of disparagement.
  • We are never in possession of all of the facts. Defamatory comments will not be tolerated.
  • Discussions that get too heated will be locked and offending comments removed.
  • Β 

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.

    founded 2 years ago
    MODERATORS
     
    you are viewing a single comment's thread
    view the rest of the comments
    [–] jabjoe@feddit.uk 13 points 1 year ago (2 children)

    He is is OK with OOP. The Linux kernel is full of OPP C, but he doesn't like C++

    [–] refalo@programming.dev 5 points 1 year ago (1 children)

    He writes Qt C++ for his diving app though.

    [–] jabjoe@feddit.uk 4 points 1 year ago (1 children)

    I think Linus did it in C with GTK but who took it moved it C++ and Qt. Lazy searching didn't dig up the story.

    [–] refalo@programming.dev 2 points 1 year ago* (last edited 1 year ago) (2 children)
    [–] PipedLinkBot@feddit.rocks 1 points 1 year ago

    Here is an alternative Piped link(s):

    https://www.piped.video/watch?v=gGZyVSOnqm0

    Piped is a privacy-respecting open-source alternative frontend to YouTube.

    I'm open-source; check me out at GitHub.

    [–] jabjoe@feddit.uk 1 points 1 year ago (1 children)

    I write C++, but I don't like it. I don't think any one should be claiming Linus doesn't like it because he doesn't know it. If he wants to contribute to this project, it must be C++.

    [–] refalo@programming.dev 1 points 1 year ago* (last edited 1 year ago) (1 children)

    I don’t think any one should be claiming Linus doesn’t like it because he doesn’t know it

    I didn't think anyone was making that claim? Either way I'm certainly not trying to.

    If he wants to contribute to this project, it must be C++.

    Yes, this is true, it's just that he was also included in the decision making process to switch to it in the first place, and I feel like his continued use of it makes me think it doesn't have to be as awful as everyone makes it out to be, or he wouldn't use it at all.

    [–] jabjoe@feddit.uk 1 points 1 year ago

    Ask him. It's not like he has publically changed his mind. I think he just went with other developers he had handed the project to.

    [–] Bye@lemmy.world 0 points 1 year ago (1 children)

    He’s not though, you should look into it

    [–] jabjoe@feddit.uk 3 points 1 year ago (1 children)

    Look at the kernel code. It's full of OOP C. There absolutely are objects in the kernel.

    [–] refalo@programming.dev 3 points 1 year ago (1 children)

    Yea but all that function pointer indirection can actually hurt performance (especially caching), some things in C++ actually can be faster just because the compiler is better at optimizing for that.

    [–] jabjoe@feddit.uk 2 points 1 year ago (1 children)

    There is nothing you can do in C++ or C, that can't be done in the other. It's the kind of the point of those languages.

    [–] refalo@programming.dev 2 points 1 year ago (1 children)

    Technically you're right, but I don't think that changes what I said about optimization. There are still cases where equivalent C++ code can be faster than the C version merely due to different optimizations used.

    [–] jabjoe@feddit.uk 1 points 1 year ago (1 children)

    Meh, I'm unconvinced. If it's any kind of hot spot, in either, you can optimize the hell out of it. C++ is often more bloated is it's just a harder language pretending to be an easier one.

    [–] refalo@programming.dev 1 points 1 year ago* (last edited 1 year ago) (1 children)

    That's fine, you don't have to agree. Personally I do like to use just a few features of C++ without going too crazy, like simple classes and maybe one level of inheritance, but I don't really get into templates or exceptions or other really complex/controversial stuff. I prefer having the stronger typing and better readability of this kind of C++, and I think it helps me make less mistakes, but I realize not everyone agrees, and that's ok.

    [–] jabjoe@feddit.uk 1 points 1 year ago (1 children)

    I think that's the thing, C++ is so broad. It's like many languages together. It's complex with lots of implicitness yet unsafe. There is loads of support in compilers and tools to mitigate that, but that's treatment not cure.

    [–] refalo@programming.dev 1 points 1 year ago (1 children)

    I think the same could be said about C now too, it is continuing to evolve itself with newer standards too just like C++. People choose to only use C features that they want, same goes for C++.

    [–] jabjoe@feddit.uk 1 points 1 year ago (1 children)

    And that is true of any language, but C++ is without doubt one of the broadest. There are very different ways of working with it that compile very differently.

    [–] refalo@programming.dev 1 points 1 year ago (1 children)

    Is that really such a bad thing though?

    [–] jabjoe@feddit.uk 0 points 1 year ago

    Yes. Too much for people to learn, so they make mistakes. I've seen compilers get confused with C++. Though it was MS's....

    If a language isn't tight, it should at least be safe. C++ is neither. You can do anything with it, but I don't think it's ever really a good tool for a particular job.