• Liam Healy's avatar
    Pass complex scalars to GSL functions · 4647599b
    Liam Healy authored
    By sending the two parts of a complex as separate doubles (complex
    double-float), or packing the two parts into a one double-float
    argument (complex single-float), it is possible to pass complex
    numbers in GSL function calls.  This is very likely to be
    non-portable, so a test is conducted and the results
    in *pass-complex-scalar-as-two-reals* determine whether defmfun does
    this translation or just creates a function that signals an error.
    The complex tests have been modified so that no longer expect an
    error:
    SBCL 64: TOTAL: 1223 assertions passed, 5 failed, 0 execution errors.
    CCL 64: TOTAL: 1228 assertions passed, 0 failed, 0 execution errors.
    This also works in 32 bit SBCL.
    4647599b
complex-types.lisp 3.16 KB