Remix.run Logo
▲ anonymous908213 11 hours ago

LLMs have been trained to fix compile errors in a loop. Give them years of human labor worth of tests and they will fix compile errors until it works (as well as the tests can ensure). Now you have a codebase no one has read. Good luck adding new code to it.

Let's also not forget that Bun was claiming a rewrite in 11 days or whatever it was, but actually spent three months of human labor fixing hundreds of issues their rewrite introduced before shipping it as a release.

▲epolanski an hour ago | parent [-]

> Good luck adding new code to it.

Interestingly, your whole comment implicitly has the answer to this. In the future you don't add code or read it, you only add test cases and have the loops work on covering the new case.

▲anonymous908213 15 minutes ago | parent | next [-]

The existing test cases were created based on understanding the code. Creating good tests that cover every case you care about without understanding the code is not possible.

▲epolanski 6 minutes ago | parent [-]

Either the current test suite covers the apis and expected behavior or it does not.

▲mexicocitinluez an hour ago | parent | prev [-]

I don't know that I agree, especially with LLMs as they are right now.

Maintainability isn't just for humans. An LLM working in an unmaintainable codebase has the same problems we do. It doesn't necessarily follow that if your code can pass your tests today then it will be able to pass the tests of tomorrow. I'm in healthcare. Regulations and payor rules change constantly. I don't know what tomorrow will bring, but I do know that the code I have an LLM generate tends to focus on the here and now (at the expense of the future). Sometimes that's okay, though. I don't know much about writing a compiler, so it could theoretically work.

This is by no means an anti-AI post (I use the hell out of these tools). But I can still see the cracks in them.

▲epolanski 5 minutes ago | parent [-]

Your comment would've made sense in 2024, not now.