• Ghoelian@piefed.social
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 day 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
      ·
      1 day 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
        ·
        15 hours 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
          ·
          3 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.

        • auzy1@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          1
          ·
          15 hours 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.