4 ms·
I feel like this is kind of missing the point of the argument around this. People love to say "Well you don't check your compiler output do you?" (never mind th
by overgard 8mo ago
I feel like this is kind of missing the point of the argument around this. People love to say "Well you don't check your compiler output do you?" (never mind that some of us actually do for various reasons). When's the last time a compiler introduced a bug into your code? When's the last time an LLM introduced a bug into your code? There you go.
- gaigalas 8mo ago> When's the last time a compiler introduced a bug into your code? A compiler, making my job harder by being unpredictable? All the time. So did other programmers, users with creative input, random parallel processes running at the same time. LLMs are actually kind of tame in comparison.
- salawat 8mo agoExcuse me. I curse at compiler writer's on a regular goddamn basis. There are these things called "optimizations" that I assume they spend a bunch of time hmmming and hawwwing over, but will regularly take a shit on how the structure of how the resulting assembly comes out. It is downright infuriating. Maybe you don't build or tinker with things enough to have warranted making a dartboard out of the gcc contributor graph, but damnit, some of us do. That compiler is not magic, continually floats around, and when you're just trying to get something from the stage of "doesn't exist at all" to "exists", does absolutely throw curve balls your way. I start wit -O0 -g and then crank up the optimization level once everything works. Otherwise come debug time, shit's missing, stuff happens at weird times, etc. If you don't treat the compiler as spooky, you haven't paid enough attention to it.
- overgard 8mo agoWhile I agree undefined behavior is annoying and a huge UX issue, end of the day the bug is in your code not in the compiler. Also having an -O0 debug build is standard practice. My point isn't that compilers are super easy to use and never frustrating, my point is that the notion that LLMs "compile" english to code is a bad analogy. Compilation is a translation from one formal representation to another. LLMs are an interpretation of informal language into a formal language. They just are not at all the same thing.
- 1718627440 8mo agoUnrelated to your actual point, with which I agree with, the problem here is not just UB. It's that timing behaviour is not part of the language specification, so compilers don't necessarily uphold it, same for other machine specific semantics, like reachability of symbols or access patterns to random addresses.