> yet I don't have to know or care about implementation details
Where do I even begin...yes, you should care about implementation details unless you're only going to write stuff you run locally for your own amusement.
until you learn to trust the system and free mental capacity for more useful thinking. at some point compilers became better at assembly instructions than humans. seems inevitable this will happen here. caring about the details and knowing the details are two different things.
I've had the LLM "lie" to me about the code it wrote many times. But "lie" and "hallucinate" are incorrect anthropomorphisms commonly used to describe LLM output. The more appropriate term would be garbage.
Just a basic sanity check: did the LLM have the tools to check its output for lies, hallucinations and garbage? Could it compile, run tests, linters etc and still managed to produce something that doesn't work?
I've frankly given up on LLMs for most programming tasks. It takes just as much time (if not more) to coddle it to produce anything useful, with the addition of frustration, and I could have just written far better code myself in the time it takes to get the LLM to produce anything useful. I already have 40 years experience programming, so I don't really need a tin-can to do it for me. YMMV.
Compilers are deterministic tools. AI is not deterministic. It will tell you this if you ask it. AI then, is not a tool. It is an aide. It is not a tool like a compiler, IDE, editor, etc.
Where do I even begin...yes, you should care about implementation details unless you're only going to write stuff you run locally for your own amusement.