• Ghoelian@piefed.social
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 days ago

    A good language server / ide will also complain about incorrect types. That specific example is a deterministic process, no llm is required for it at all.

    • auzy1@lemmy.world
      link
      fedilink
      arrow-up
      2
      arrow-down
      2
      ·
      2 days ago

      We do use one. But, in practice, they can’t catch a lot of things which AI will

      At least in our case too based on what’s available, it also can’t check stuff like coding style well (but our development relies on that less).

      Some might though

      • Ghoelian@piefed.social
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        2
        ·
        2 days ago

        I find that very hard to believe, if you’re truly just talking about typing. If this is true you’re using an awful language server / linter / whatever.

        Coding style is also a deterministic process, for which every widely used language has a linter or formatter or whatever. Also no LLMs needed.

        As a professional software developer of 8 years, I honestly have no idea what you’re talking about

        • MangoCats@feddit.it
          link
          fedilink
          arrow-up
          1
          ·
          1 day 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
            ·
            1 day 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
              arrow-down
              1
              ·
              22 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.

        • auzy1@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          2 days ago

          This is Lua code. LuaLS is basically the language server available.

          And sorry, I should have said “dynamically typed”. But, weak tables.

          There’s a lot of things that don’t get caught, such as concatenating a boolean which causes a lua error in our environment. LuaLS won’t catch that.

          Formatting isn’t a problem for us, but it does affect the kernel. But, the VSCode one we use does a lot of weird things honestly.

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

            I am not familiar with Lua at all, but that does just sound like a bad language server. I still don’t think the solution is AI, it’s just making a better language server.