5 ms·
> it means, still producing a correct result, even if the integers exceed the values which can be represented by machine-sized integers To clarify for people a
by flavio81 9y ago
> it means, still producing a correct result, even if the integers exceed the values which can be represented by machine-sized integers
To clarify for people alien to Common Lisp: In lisp, by default, integer numbers can be as big as they need to. From the Common Lisp Hyperspec, the entry on the
integer data type says:
An integer is a mathematical integer. There is no limit on the magnitude of an integer.
- infogulch 9y agoThis really is the correct default. If something unexpected happens the better failure case is to be a little slower than expected than giving completely absurd results. Then adding the optional power to constrain the inputs allowing the compiler to use more efficient implementation with those assumptions is awesome.
- renox 9y agoThee SPARC CPU has/had instructions to add tagged integers which show that this can be nearly as fast as "normal integers"