Is it time for D 3.0?
Jesse Phillips
jessekphillips at gmail.com
Mon Oct 13 19:24:21 PDT 2008
On Mon, 13 Oct 2008 15:35:45 -0400, Paul D. Anderson wrote:
> I posted this comment already in the phobos/tango thread but I thought
> it might be of more general interest.
>
> With all the changes being discussed -- many of the breaking changes --
> is it time to move on to D version 3.0?
>
> It seems to me a natural division exists between 2.0, when we had to
> choose between tango and phobos; and 3.0, when we got to use them both.
>
> Some of the other recent discussions here, template syntax, for example,
> could fall on the other side of the 2.0/3.0 divide.
>
> I'm sure Walter and others have discussed when and how the move to 3.0
> will occur. Just wondering if this important change should be a factor.
>
> Paul
Personally I see this a horrible reason to make a divide. Others have
mentioned a 1/2/3 divide issue, but frankly I don't see that as
avoidable. Look at how many options you have for a GCC versions in a
Linux repository. I think DMD should handle many versions of itself a
little better (conf file) but that is a different issue.
The problem is, who will want to use 2.0? Currently a big problem is the
"wild west" syndrome that it has. If this is released having 3.0 the
Phobos/Tango merger, people will skip 2.0 to go for Tango. Don't get me
wrong, we have many Phobos users; we really want to get rid of this
divide as soon as possible, not make it permanent.
On to the question of "time for a D3." Consider what happened with this
first split.
A stable branch (1.0) was to be created that would not allow "breaking
changes" (new features are a special breaking change as it might not
break past code). 2.0 became the test bed for new very different ideas
that really change how the language worked.
There had been many bug reports filed before the idea of a split came
about. Many people did not think a version break would stop feature crepe
of the already posted requests. This would be important in deciding what
to split.
Another thing to look at is reducing user choice. When someone is
creating a new project, you want them to choose the latest release for
it. You aren't likely to choose Java 1.4 over 1.6 however, I think in D's
case even after a 2.0 release, we will likely see such a discussion being
made. This will be the case if the user does not like the way const is
done, and if the Tango merge is done in 3.0 that would be another reason.
This should be avoided, but not a reason to leave out features in future
versions.
If a 3.0 is to be considered a clear line should be drawn and the line
should not be a radical change for the foreseeable future i.e. when the
split is created.
More information about the Digitalmars-d
mailing list