# 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
---------------------------------------------------

Reply via email to