Martin Ward <martin@gkc.org.uk> wrote:> BartC <bc@freeuk.com> makes the point that the redundancy> provided by enforced consistency between grouping and indentation> will catch typos which would otherwise cause bugs in the code.

(big snip)> This point raises some important issues about languages and compilers:

(snip)> (2) Absolutely no behaviour should be "implementation dependent"> or "undefined". Every syntactically valid program should have> a single semantically valid meaning (even if that meaning> is "halt with an error message").

Much "implementation dependence" comes from dependence on the host
processor. Maybe sometimes too much, but it is nice to be able to use
the new features of newer processors.

Many early machines were sign magnitude, but most now use twos
complement, which mostly is an advantage.

Different word sizes are also a common dependence, with 36 bit words
and 6-bit characters common on the early scientific machines.