[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: module _VERSION number scheme proposal
- From: David Manura <dm.lua@...>
- Date: Tue, 8 Nov 2011 21:14:26 -0500
On Tue, Nov 8, 2011 at 1:55 AM, Daurnimator <email@example.com> wrote:
> I think a system where everything is a number would be much better:
> - They can be used directly in comparisons without any forethought
> - They can be almost arbitrarily large (as long as it fits in a double)
> They don't need any regulations; as they are a native lua type - to
> check if a module conforms you can just use type(mod._VERSION) ==
True, but on the other hand:
- The type used for Lua numbers is undefined (could even be integer
or single precision non-IEEE float).
- There is not a unique way to format a number as a string.
_VERSION=0.000010; print(_VERSION) --> 1e-5.
- You still need padding. Using 1.10 > 1.09 rather than 1.10 > 1.9
is not that bad, but representing things like 220.127.116.11 with 1.000000007
suffers from readability due to counting zeros.
You could alternately use positive integers (1,2,3,...), but this
prohibits later inserting a version between older version numbers
(e.g. for patches).