On Wednesday, 22 January 2014 at 04:29:05 UTC, Walter Bright
"A good syntax needs redundancy in order to diagnose errors and
give good error messages."
This is also true of natural languages. The higher the
redundancy, the easier it is to guess or reconstruct what a
person tried to say (in a noisy environment) or write (if the
message gets messed up somehow). Texts in highly inflectional
languages (like German) can be "recovered" with higher accuracy
than texts in English.
If grammatical relations are no longer expressed by inflectional
endings (as is often the case in English), the word order is
"The dog bit the man."
In Latin and German you can turn the statement around and still
know who bit who(m).
Over the centuries, natural languages have reduced redundancy,
but there are still loads of redundancies e.g. "two cats" (it
would be enough to say "two cat", which some languages actually
do, see also "a 15 _year_ old girl).
Syntax is getting simplified due to the fact that the listener
"knows what we mean", e.g. "buy one get one free". I wonder to
what extent languages will be simplified one day. But this is a
topic for a whole book ...