Why do have languages all these complex grammatical features? Languages seem to become more simple over the ages, see Lating becoming Italian, Sanskrit becoming Hindia and Old Greek becoming New Greek for example. But if this is a language law, how did we end up with the complexities in the first place, or is this rule in place only for the last two thousand years. If you think about, people have been speaking languages for hundreds of thousands of years. Until two thousands years ago, this resulted obviously in rather complex languages (asuming they started out simple). And then suddenly they started losing complexitiy.
I think it might have to do with the fact that complexity in languages is useful before the discovery of writing. Spoken language in pre-writing culture is used not only for communication, but also for remembering complex stuff, epos's like the Manas with more then 500.000. lines, or even mathematics in de Veda with systems to remember numbers. The more complex languages are, the more options the poet has for encoding things in a way that can be remembered, i.e. if a language is completely free of complex rules and you have half a sentence, you have hardly any way of recovering the other half. In a complex language you do. The complexity functions as a form of conistency checking. You loose some bandwidth, but you gain in situations where the reception isn't too good.