On Tuesday, 26 February 2013 at 23:40:09 UTC, Timon Gehr wrote:
The DIP serves as specification for later compiler
implementation. If it is not formal enough, the implementation
may miss corner cases.
One of the goals of the DIP is precisely to avoid corner cases,
as they are a pain both for programmer and language implementers.
Languages are designed for programmers in first place, not
compilers.
Even if that was considered unequivocally true, it would not
render language specification unnecessary.
Language spec is a contract between the programmer and language
implementers. It is highly relevant for both.