# from Michael G Schwern
# on Wednesday 22 April 2009 13:38:
>>> Class::Delegation went from 1.06 to 1.7.1. That's 1.60.0 to 1.7.1
>> Of course that's what it means. The fact you don't have to type the
>> last zero is just a convenience...
>
>Of course.
>
>Of course, it could be 1.6.0. Or 1.60.0. Or 1.600.0. Or 1.6000.0.
> Where the decimal goes is essentially arbitrary
It should have been 1.0.6. Just adding a dot at every digit would
actually have been somewhat obvious.
>Therein lies the entire problem. Where the decimal should OF COURSE
> go is subjective.
Only if the choice is greater than 1.
Look at it like this: floats are base-10, but dotted tuples are base-N
(because there's an explicit column separator.) Thus, the simplest and
most logical conversion is to just insert dots between every column.
And actually, I think it is feasible to retroactively correct this!
That is, if the author actually intended e.g. 1.7.1 to supercede 1.06,
then we're golden because 1.7.1 > 1.0.6.
But, we're going to have to make a mess if anyone pushed a tuple with
the explicit intent of not superceding a float version -- or if someone
decided to switch back to floats without bumping the integer portion.
Can it happen?
--Eric
--
"Ignorance more frequently begets confidence than does knowledge."
-- Charles Darwin
---------------------------------------------------
http://scratchcomputing.com
---------------------------------------------------