The FLI provides several different immediate types for the representation of floating point numbers. They consist of the following: :float, :double, :lisp-double-float, :lisp-float, and :lisp-single-float. The floating types all associate equivalent Lisp and C types, except the :lisp-float, which can take a modifier to cause an associations between different floating types. A :lisp-float associates a Lisp
float
with a C
float
by default, but a declaration of
(:lisp-float :double)
corresponds to a C
double
, for example.
Note: be sure to use
:language :ansi-c
when passing float arguments to and from C using define-foreign-function and so on.
LispWorks Foreign Language Interface User Guide and Reference Manual - 7 Dec 2011