And then there's the distinction between lex and ius that I think needs to be considered in this context.
Treaties can be written with vague wording to allow parties to sign it, even if there isn't 100% agreement. That's an old practice.
Imagine that you have an income tax where "income" isn't clearly defined. Someone will end up with an audit and a lawsuit from the tax office because their definition will be, of course, extensive (every income, including non-realized capital gains) whereas most citizens would only consider salaries.
In the end, you create legal uncertainty, and give courts way too much power.
For the record, I used to work for my country's government, and had to evaluate some laws in making that were written in an abstruse way. When I asked why, the civil servant told me that it was so "they could pick the most favorable meaning in the case of a lawsuit".
So there are different tiers to deal with this.
- Constitution - Very abstract and very rarely changed.
- Statute - Sometimes abstract, sometimes specific.
- Administrative rules. Very technical but still intended for broad application.
- Individual court cases. Can be hyper specific.
Programming tends to use less understandable but more precise verbiage in general.