> The scheme is good - although, I basically have the same
> comments as Michael:
> 
> * It is simpler to parse the version numbers if stable
>   versions at patchlevel 0 also include the patchlevel.

You shouldn't *have* to parse anything after the x.yy, because none of it
affects the behaviour of the compiler.  A compiler named x.yy(.z), where yy
is even, is a compiler with a well-defined set of library interfaces.
Conditional compilation should check for these values of yy only.

An odd-numbered compiler is viewed as approaching the limit of the next
even-numbered compiler, so the interfaces presented by x.yy.z (y odd, z is a
date) are the same as x.(yy+1).  This of course won't be true for certain
values of z because the interfaces evolve over time, but the fix is to
"upgrade to the latest value of z".

> * There is not much point in having the substring "pre" in
>   the patchlevel of unstable versions - especially, as the
>   "odd versions are unstable" scheme is becoming more and
>   more widespread (ie, the need for "pre" as a comment is
>   not really clear and as the scheme for the third digit is
>   completely different from stable versions, unstable
>   version numbers stand out anyway).

Agreed.  Let's remove the "pre", leaving the unstable compilers named
x.yy.YYYYMMDD.

Cheers,
        Simon

Reply via email to