float (original) (raw)
ANSI Common Lisp 12 Numbers
12.2 Dictionary of Numbers
12.2.4 float | System Class |
---|
Class Precedence List:
Description:
A _floatis a mathematical rational (but not a Common Lisp rational) of the form_s f be-p, where s is +1 or -1, the sign;b is an _integer_greater than 1, the base or radix of the representation;p is a positive integer, the precision (in base-b digits) of the float;f is a positive _integerbetween bp-1 and_bp-1 (inclusive), the significand; and e is an integer, the exponent. The value of p and the range of _e_depends on the implementation and on the type of _float_within that implementation. In addition, there is a floating-point zero; depending on the implementation, there can also be a "minus zero". If there is no minus zero, then 0.0 and -0.0 are both interpreted as simply a floating-point zero.(= 0.0 -0.0) is always true. If there is a minus zero, (eql -0.0 0.0) is false, otherwise it is true.
The types short-float, single-float, double-float, and long-float are subtypes of type float. Any two of them must be either disjoint types or the same type; if the same type, then any other types between them in the above ordering must also be the same type. For example, if the type single-float and the type long-float are the same type, then the type double-float must be the same type also.
Compound Type Specifier Kind:
Abbreviating.
Compound Type Specifier Syntax:
(float [lower-limit [upper-limit)]]
Compound Type Specifier Arguments:
lower-limit, upper-limit - interval designators for type float. The defaults for each of lower-limit and upper-limit is the symbol *.
Compound Type Specifier Description:
This denotes the floats on the interval described by_lower-limit_ and upper-limit.
See Also:
Figure 2.3.1 Numbers as Tokens, Section 2.3.2 Constructing Numbers from Tokens, Section 22.1.3.1.3 Printing Floats
Notes:
Note that all mathematical integers are representable not only as_Common Lisp_ reals, but also as complex floats. For example, possible representations of the mathematical number _1_include the integer 1, the float 1.0, or the complex #C(1.0 0.0).
Allegro CL Implementation Details:
None.