Use fixed point numbers!

You can scale up a number to make it an integer,then store it.

This does not work in snap.Snap/Javascript forces you to use floating point numbers which clamp the 64 bits to only 53 bits.

This in a low level language where floats are weak and you have int128 is nice to use.

Also,floating point numbers are invented because people wanted more range and got increasingly lazy in remembering how much bits to shift to get the actual result.

A more powerful approach would be to invent b2^64(or b2^52 in snap/js).It uses a number for each digit.It would be faster than bignum.

Well,apparently I forgot that js does that.

It does if you load the Bignum library!

Oh,right

But Bignum has exact rationals which negate the need of decimal points

Supposing your desired answer is rational. (If you pick a real number at random, the probability of it being rational is zero.)

you cant represent most irrationals either

You can't *exactly* represent *any* irrationals! But yeah I take your point.

Oh right.

Maybe I was meaning "you can't name/give expressions to most irrationals"

I was thinking "sqrt(2)^2=2,not 1.999396"