In the spec.
Hmm... my code is the spec. It just happens to be executable. Is writing a precise spec in English easier than in a programming language?
The spec contains ambiguities and the code contains bugs. Clarifying ambiguities in the spec with stakeholders, allows one to reduce bugs in the code.
If you repeat this process until all ambiguities in the spec are eliminated, aren't you essentially left with code? Or at least something that looks more like code than plain English?
No