All this talk about finalising D2 makes me worried

Steven Schveighoffer schveiguy at yahoo.com
Fri Jul 17 06:19:35 PDT 2009


On Fri, 17 Jul 2009 08:36:17 -0400, Stewart Gordon <smjg_1998 at yahoo.com>  
wrote:

> Steven Schveighoffer wrote:
>> I got it from when you said D1 should be finished before D2 is  
>> finished.  My point is, yeah, that's a given considering all of D1's  
>> bugs exist as bugs in D2.
>
> You're confusing being actually finished with being declared finished.

OK, so you are worried that D2 shouldn't be declared finished until it's  
finished?  What makes you think that will happen?

Here's what I think will happen:

1. Walter is satisfied that the set of features he wants to have in D2 are  
either implemented or well defined (and I hope this includes bug 1961!)
2. He says "no more features."
3. All the "required" features are implemented completely (possibly with  
bugs). "required" is hard to define, but I trust Walter will know what he  
thinks is important for an initial release.
4. D2 is declared "stable" (not finished), and no API changes will occur.
5. Bugs are fixed, etc.

At the same time, D1 is already in stage 5, so as bugs are fixed in D2,  
they are also fixed in D1 (since they are loosely based on the same code).

I don't have any problem with the state of things, and I don't consider D1  
or it's spec being finished a critical part of D's success.

>
> First D1 must be actually finished.  Then D2 must be actually finished.  
>   This we seem to agree on.  Then, and only then, can D2 sensibly be  
> declared finished.  Simple.  But it seems people are wanting to meddle  
> with this order, and this is what I've been getting at all along.

I don't think so.  I think people want D2 to be free from breaking changes  
like D1 is.  Without this, it's hard to write code for a moving target.   
Even if D2 is not "finished," if it's not changing (except for bug fixes)  
then it's usable for long term projects.

>>  Large successful D1 projects still seem to exist without a complete  
>> spec.  I'm not so sure a complete D1 spec would miraculously spark a D  
>> revolution.
>
> Simple.  Once we have a complete D1 spec, major software companies will  
> be ready to implement D.  When a major software company implements D,  
> it'll become more widely known to the masses.  This will also pave the  
> way for D to taken up by the software industry on a significant scale.

What major company is going to write a compiler for D1 when D2 is almost  
ready for feature-freeze?  I think D1 missed that boat.

>
> <snip>
>> All I'm saying is, you're not going to get an engineer to stop working  
>> on the interesting fun project to go dot i's and cross t's on a mostly  
>> functional prior project, except for probably bug-fixes.  Especially  
>> when he does it for free :)
>
> Can you think of an undotted i (for as long as we aren't doing this in  
> Turkish) or an uncrossed t that doesn't qualify as a bug?

No, but as evidenced by the success of large projects like Tango (I've  
used it to write pretty interesting stuff for my company), the bugs are  
not show stoppers, similar to how an undotted i does not ruin the meaning  
of the text containing it, it's just a superficial issue.

And spec bugs aren't even close to show stoppers, since they just don't  
reflect the actual behavior, especially since all compilers right now are  
based on the reference design (dmd).

-Steve



More information about the Digitalmars-d mailing list