Common Lisp the Language, 2nd Edition While most arithmetic
functions will operate on any kind of number, coercing types if
necessary, the following functions are provided to allow
specific conversions of data types to be forced when desired.
float number &optional other This converts any non-complex
number to a floating-point number. With no second argument, if
number is already a floating-point number, then number is
returned; otherwise a single-float is produced. If the argument
other is provided, then it must be a floating-point number, and
number is converted to the same format as other. See also
coerce. Each of these functions converts any non-complex number
to a rational number. If the argument is already rational, it is
returned. The two functions differ in their treatment of
floating-point numbers. rational assumes that the floating-point
number is completely accurate and returns a rational number
mathematically equal to the precise value of the floating-point
number. rationalize assumes that the flo