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

    The thing about typing is that it is easy for a deterministic compiler to flag violations.

    There are hundreds of other “best practices” that determinisitic compilers aren’t able to flag. Even the almighty Rust language is suceptible to race conditions, deadlocks, and many potential crash conditions.

    I’m an old C programmer, and Rust pisses me off when it won’t let me do something that’s demonstrably 100% safe. However, a lot of the things that Rust and other general practice rules forbid or advise against, should really be avoided when they get past a very simple application. What was “proven safe” quickly becomes unsafe when a later maintainer who doesn’t understand the risks “extends” the code.

    • Ghoelian@piefed.social
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 hours ago

      Well this is why you have different levels of warnings. Some are just flat out errors, some are strong warnings, others are weak warnings. Of course, at the end, the programmer has to be the one to decide to follow the language server’s diagnostics or not.

      As far as I understand, the whole draw of Rust is it’s very opinionated in its safety. If you don’t want that, Rust is just not for you.

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

        Rust is it’s very opinionated in its safety. If you don’t want that, Rust is just not for you.

        Yeah, for hand coding my own things, I find Rust offensive and needlessly rigid leading to unnecessary complexity - complexity being the mother of all bugs.

        For code written by our overseas contingent, and / or LLMs, Rust is at least a little comforting, and if anyone ever starts maintaining the code I have written (rare, so far, but increasing ever so slowly), I suppose having the maintenance done in Rust isn’t a bad thing either.