On Tue, Nov 11, 2008 at 8:14 PM, Ary Borenszweig <[EMAIL PROTECTED]> wrote: > Now that D2 is being developed, I don't know how much time it will take > until it is finished. Once it is, what will happen to D1? Will anyone still > use it? > > I ask this because from time to time I like to add new features to Descent > to improve D1 support. Semantic analysis is pretty done for D1, except for > some bugs that are hard to fix, or at least take a lot of time. :-P > > For D2, there's still missing a lot of semantic analysis porting from DMD, > and doing that is kind of boring (adding new features, that's fun). But if I > add features to D1 and it will be gone soon, what's the point? Also, I feel > that the great majority of the people here don't see an IDE as a helpful > programming tool. > > But, in another point of view, I see a lot of big differences between D1 and > D2. For instance, I don't like const/invariant, I don't care about that, I > never had bugs or trouble or performance problems because of mutability > problems, so I consider D1 easier to grasp. So I wonder if anyone else > thinks "No matter what will happen, I'll probably just stick with D1". > > What do you think about all this?
Walter has said that he'll keep supporting D1 as long as people are using it. But I don't think he specified how many individuals he considers to be "people" as opposed to "hardly anybody". I plan to move to D2 at some point after DWT supports it. Which means as soon as DWT and Tango support it. I'm not particularly excited about const either, but I am excited about the fixed template bugs which have been categorized as new D2 features. And I don't think I'll hate using D2s const, either. It's just a little more than I was looking for in a const system. And I do believe it has a good chance of giving D a leg up in the multicore world eventually. I just don't write a lot of multicore code right now, and D2 doesn't actually have any multicore support to take advantage of the const system yet, either. After reading a post Sean Kelly made about using 'in' for D2 compatibility I started marking function arguments that I intended to be const as 'in' in my D1 code. Even if I don't ever port the code to D2, it's a handy way to document that the argument is not going to be modified. It's just an unenforced convention in D1, but it's still handy. Beats the "/*const*/ arg" annotation I was using previously. :-) --bb
