# from John Peacock # on Monday 20 April 2009 04:16: >> All of the trouble we've ever had is just that X.Y happens to look >> like some kind of a number and like a dotted 2-tuple. But instead >> of perl version 5.564.0 or 6.0.x, it was 5.5.640. > >X.Y is a [floating point] number and is in fact described that way in > the Perl documentation as appropriate to be used as $VERSION.
So? It is a special case, and comparing it to a dotted tuple is still an exception. The confusion about extended versions all centers on this. >Here is a portion of my CPAN directory: > ... 0.0905 -> v0.90.5 0.0906 -> v0.90.6 0.0907 -> v0.90.7 0.0908 -> v0.90.8 0.0909 -> v0.90.9 0.091 -> v0.91.0 0.0911 -> v0.91.1 > The $VERSION's listed above only make sense if you compare them as > numbers, not as tuples. Sure, you can't just treat a float as a tuple without fixing the width of the second column. I imagine this is where everybody gets confused and I think all we need to do is explain that. X convert to vX X.Y convert to vX.Y00 X.YY convert to vX.YY0 X.YYY convert to vX.YYY X.YYYZ convert to vX.YYY.Z00 vX sort as a dotted tuple vX.Y sort as a dotted tuple vX.Y.Z sort as a dotted tuple vX.Y.Z.A sort as a dotted tuple Perhaps the dotted tuple with the leading 'v' should be the canonical form for META.yml? (Deprecate the float form and include something like the above conversion explanation.) --Eric -- "You can't win. You can't break even. You can't quit." --Ginsberg's Restatement of the Three Laws of Thermodynamics --------------------------------------------------- http://scratchcomputing.com ---------------------------------------------------