Uranuz:

Why there are so complicated rules in the *new* language.
It's hard to understand the logic.

Despite D being only 14 years old, one of its rules is to (usually) give the same results if you write code that is valid in C. This means it has to follow many rules of C language. If you try your code in C you will see some similar results. This rule of D is quite handy.

Other reasons for the current design of D is that sometimes practicality beats design purity, because D is an engineering product.

And I guess another reason is that Walter is not a mathematician nor a computer science theorist, so he has not seen some more principled designs, or he has not appreciated them because of their more formal nature.

Bye,
bearophile

Reply via email to