Comment by LtWorf

Comment by LtWorf 9 hours ago

6 replies

How would you debug a programming language made for LLMs? And why not make an LLM that can output gcc intermediate representation directly then?

energy123 9 hours ago

You wouldn't, this would be a bet that humans won't be in the loop at all. If something needs debugging the LLM would do the debugging.

  • codr7 25 minutes ago

    Yeah, I can imagine how that goes:

    Oh, there's a bug in this test case, deletes test case.

    Oh, now we're missing a test case, adds test case.

    Lather, rinse, repeat.

  • ModernMech 8 hours ago

    One has to wonder, why would there be any bugs at all if the LLM could fix them? Given Kernighan's Law, does this mean the LLM can't debug the bugs it makes?

    My feeling is unless you are using a formal language, then you're expressing an ambiguous program, and that makes it inherently buggy. How does the LLM infer your intended meaning otherwise? That means programmers will always be part of the loop, unless you're fine just letting the LLM guess.

      Kernighan's Law - Debugging is twice as hard as writing the code in the first place.
    • energy123 7 hours ago

      The same applies to humans, who are capable of fixing bugs and yet still produce bugs. It's easier to detect bugs with tests and fix them than to never have introduced bugs.

      • ModernMech 6 hours ago

        But the whole idea of Kernighan’s law is to not be so clever that no one is available to debug your code.

        So what happens when an LLM writes code that is too clever for it to debug? If it weren’t too clever to debug it, it would have recognized the bug and fixed it itself.

        Do we then turn to the cleverest human coder? What if they can’t debug it, because we have atrophied human debugging ability by removing them from the loop?