concrete-optics.algebra.equality

Equality notions used in tests.

compare-functions

(compare-functions base-comparison initia-samples & remaining-samples)

Checks semantic equality of functions. The usual equality for functions is hash based. It cannot check the equality of, say, #(+ % %) and #(* 2 %). The general problem is of course undecidable so we only test for given sample values. Meant to be used in tests.

typed-eq

(typed-eq)(typed-eq _single-value)(typed-eq value & rest)

In normal equality you basically check ‘content’ equality. So for instance [1 2 3] is equal to '(1 2 3). Typed eqaulity checks content and type, so it is stricter. This is meant to be used in tests.