lua-users home
lua-l archive

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


On Wed, Nov 21, 2012 at 8:34 PM, Egor Skriptunoff
<egor.skriptunoff@gmail.com> wrote:
> On 11/21/12, Roberto Ierusalimschy <roberto@inf.puc-rio.br> wrote:
>> a computation can "overflow" with floats and
>> not overflow with 64-bit integers. ("overflow" here means lose of
>> precision.) And (as you mentioned) "overflow" with floats never
>> raise an error.
>
> I have an idea.
> Strings can be treated as integer numbers of arbitrary length.
> So, a string of length 8 can be used instead of 64-bit integer.
> Let all integer and bitwise operations be implemented on strings.
> Strings will never overflow because of auto growing up.
> It will be cool to have very-long-integer arithmetic in Lua
> without external libraries.
>

implementing a BCD-like solution without optimizing per arch is pretty
much useless in the face of competition (gmp, openssl bn, cobol
itself). serious projects would end up using external libraries anyway

and yes, i deliberately ignored the 64-bit qualifier in your post.
paired with "auto-growing", the end result embodies sqlite4's varint
idea and really has nothing do to with strings