• MangoCats@feddit.it
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    4
    ·
    1 day ago

    Rust is C++ with nanny nags, and immature libraries, and a lot of improvements that 30+ years of C++ has made obvious today which weren’t so obvious back then.

    The worst thing about Rust, from my perspective, is that it really seems to push programmers to “multithread all the things” because Rust offers the delusion that you can do that more safely now. Newsflash: all the things do not need to be multithreaded, there’s an awful lot of code that’s just peachy in a single threaded implementation, thank you very much, and multithreading it is just inviting trouble for no significant gains.

    Mostly, a good library on C++ (Qt used to be one of those, but it’s started becoming annoying in the past few years) offers a lot of what Rust enforces at the language level. Stick to the library implementations and you’re safe. Color outside the lines when the library isn’t up to what you need - but do so carefully.

    • Zamundaaa@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      8
      ·
      1 day ago

      Mostly, a good library on C++ (Qt used to be one of those, but it’s started becoming annoying in the past few years) offers a lot of what Rust enforces at the language level.

      I like C++, but let’s not pretend that’s actually true. Qt is completely full of really unsafe APIs, most of them quite old by now. It certainly doesn’t offer anywhere close to any safety Rust provides.

      Even something as innocent as passing a pointer to Qt’s javascript engine can end up in use after free, and the signal+slot stuff goes wrong real fast once you do need multi threading.

      (which is not to single out Qt specifically, the STL has plenty of really stupid and unsafe APIs as well)

    • HaraldvonBlauzahn@feddit.orgOP
      link
      fedilink
      arrow-up
      3
      arrow-down
      4
      ·
      1 day ago

      Newsflash: all the things do not need to be multithreaded, there’s an awful lot of code that’s just peachy in a single threaded implementation, thank you very much, and multithreading it is just inviting trouble for no significant gains.

      I am waiting for your single-threaded fork of the Linux kernel.

        • silasmariner@programming.dev
          link
          fedilink
          arrow-up
          2
          ·
          17 hours ago

          What’s a rust programmer? Someone who’s ever written anything in it? If the same holds true for C, probably a higher percentage than of ‘C programmers’ given how long that’s been a teaching language lol

          • MangoCats@feddit.it
            link
            fedilink
            English
            arrow-up
            1
            ·
            15 hours ago

            Well, academic exercises for grades, I’d call Rust students.

            Throw away programs people do for fun, I’d call Rust hobbyists.

            Pretty much anyone else, doing it for money (a living: roof over head, food on table), or open source contribution - I think they qualify.

              • MangoCats@feddit.it
                link
                fedilink
                English
                arrow-up
                1
                ·
                12 hours ago

                Don’t be so sure… I work for “megacorp” and about a year ago word came from on-high: “thou shalt not C (or C++, not that they know the difference) anymore. We are in mortal fear of embarassment that we allowed a mistake to be made that our all seeing oversight should have prevented by mandating the use of safe tools.”

                • silasmariner@programming.dev
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  11 hours ago

                  That’s still rather recently, and there’s rather a large stock of ‘before people’ hanging around. But I agree inasmuch as it’ll change as time goes by and one day you’ll be right.