> Code becomes only one representation of thought among many overlapping ones.
This is wrong, code is the concrete "truth" being executed, the rest (plans, prompts, agent instructions) are just temporary artifacts used to generate the code. What's left is the code alone.
LLMs don't have any semantics, they can't execute anything with 100% certainty. So far programming languages are the only langugues that can do that.
> What's left is the code alone.
The necessary work is more than just the deliverable. Even a simple patch implies an indefinite number of other approaches not-taken, and sometimes not-taken for good reasons.
Sometimes we explicitly document those, sometimes we trust that a human expert decided against them. Those other aspects of work still exist, even if they are getting skipped/mismanaged with LLMs.
No, I think it's correct. One artefact of programming for decades is that I ended up thinking in code directly without "translating" from English first.
Thus the push to use LLMs has felt a little bit like being a fluent French speaker being told that all of the best French writers are using google translate to write French translated from English now.
Nope. Code is a representation. Even low level code. The fact that you do not understand this is concerning.
I think you misunderstand. Code is also representing something. It may be what gets executed, but that does not make it "correct".