Implemented diagnostic functions for numbers, sequences and arrays.
commitc91614523fc460da6e09ff226eb3ee2a0f272145
authorThomas M. Hermann <tmh.public@gmail.com>
Mon, 16 Mar 2009 04:25:51 +0000 (15 23:25 -0500)
committerThomas M. Hermann <tmh.public@gmail.com>
Mon, 16 Mar 2009 04:25:51 +0000 (15 23:25 -0500)
tree20d86b530ddcf30ec9836a40e8135da1b96b1cae
parent22bf84f12a97d3be284c47a46bc69a18015f18e7
Implemented diagnostic functions for numbers, sequences and arrays.

Two types of diagnostic functions are implemented for numbers. The
first type returns the roundoff error between 2 numbers. The second
type returns the roundoff error as a multiple of the appropriate
precision float-epsilon value.

For sequences and arrays, the diagnostic functions return a list of
the elements that are not equal, noting the element indices, values
and numeric error. Each function has 2 keywords. First, a :TEST
keyword to specify the equality test, default to NUMBER-EQUAL. Second,
an :ERROR-FUNCTION keyword specifying which type of error should be
reported, defaulting to #'NUMBER-ERROR.

NOTE: This is an initial implementation and subject to change.
defpackage.lisp
floating-point.lisp