DMD 1.006 release

Kyle Furlong kylefurlong at gmail.com
Thu Feb 15 19:06:11 PST 2007


Miles wrote:
> Walter Bright wrote:
>> Compile time function execution!
> 
> Best D release ever!
> 
> But the way you are numbering DMD versions is really annoying :-(
> 
> "1.006" does not express how much changed. The last software I saw that
> used decimal versions was Netscape Navigator, and before that I can't
> even remember. Most software companies I know deprecated this scheme of
> version numbering for a good reason.
> 
> 3 or 4-piece version numbers are largely used today, and they express a
> lot better the life history of a software.
> 
> 1.000 should have been called 1.0.0;
> 
> From 1.001 to 1.004, they should have been numbered 1.0.1 until 1.0.4;
> 
> Now, 1.005 and 1.006, both introduced sensible changes to the language
> spec, so 1.1.0 and 1.2.0 for them.
> 
> This also allows one to refer to things like "version 1.1 of D spec".
> Today, we have to say "the D spec as it was between 1.005 and 1.006"...
> 
> Also, version numbers are not decimal numbers. 1.10 is greater than 1.9.
> No need for leading zeros.

This seems a sensible change. Version.Major.Minor is very common and 
very intuitive. Version for code incompatible changes, Major for new 
additions to the spec, minor for bug fixes. You can keep your current 
numbering scheme for minor ticks. Thus 1.0.001, 1.0.002, etc. As Miles 
suggests, you could even retroactively bump the new "major" version to 
reflect the new features (mixins and compile time functions).



More information about the Digitalmars-d-announce mailing list