lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

> having not only unsigned integers but also the corresponding data type
> could be a good idea if one has to do integer arithmetic in that range
> since the bits representing negative integers would be used for
> positive integers and thus the possible range for pure integer
> arithmetic is extended.

You can go a long way using unsigned integers in Lua 5.3. For equality,
addition, subtraction, and multiplication, the standard operations do
the job.  For constants, you better use hexadecimal. For printing, "%u"
does the job. For order, 'math.ult' does unsigned comparisons. Division
and conversions between floats and unsigned needs some more work, but
can be done. (For instance, "x % 2^64" converts an unsigned integer 'x'
to float.)

PiL 4 has an entire section (13.2) dedicated to unsigned integers
(with the caveat about the change in decimal literals).

-- Roberto