bearophile wrote:
Bartosz Milewski:

With every release of D we are narrowing our options. After D2 and TDPL, backward 
compatibility will become a major thing, so every ad-hoc feature in D2 will have 
to be carried over.<

D is a bit compatible with the C language, but one of the main selling points 
of D (D1, D2, D3...) is its newer and cleaned up nature.
So I think D3 will break compatibility with frozen-D2 in many places, trying to 
fix the design errors of D2. D3 will not have a quick release schedule, I think 
it will try to learn from D2 and D1 in a more thought-out way, because D2 will 
be an essentially complete language, so the purpose of D3 will be mostly to 
improve things replacing features with better ones that do similar things :-) 
For example in D3 the switch may use three ... points as in the GCC extension, 
and so on. In the meantime people will often use D1 (until LDC becomes a good 
D2 compiler).

Bye,
bearophile

Speaking of switch, I have tried to convince Walter to require either a break; or a goto case xxx; at the end of each snippet inside a switch. I was surprised by his answer: "but I use fall through all the time!" :o)

I personally think requiring a goto case xxx; is more robust in presence of code maintenance because its semantics is invariant to code moves.


Andrei

Reply via email to