> Natural language's main purpose is human-to-human communication.
Agreed.
> Programming language's main purpose is not.
For languages other than raw machine code, the main purpose that they exist is human-to-human communication. A constraint that they face is the need to be able to be reducable to machine code to also support human-machine communication, but other than human-to-human communication (including time-shifted one-way communication to the future of the same human that initially created a work), there is no reason for them to exist at all.
> I think you understand the parent's point.
Sure, I understand the point. I'm also explicitly disagreeing with it.
For languages other than raw machine code, the main purpose that they exist is human-to-human communication.
If this were the case, then write-once software would be done in machine code. Instead, the 'constraint' you mention is the main purpose of programming languages.
Programming language's main purpose is not.
This is a weird semantic argument, but I think you understand the parent's point.